From 7d0d59677d549e53bc5eacbfde8aea83e9984ba8 Mon Sep 17 00:00:00 2001 From: Yuerchu Date: Fri, 28 Mar 2025 04:53:37 +0800 Subject: [PATCH] =?UTF-8?q?V1.2.0=20alpha=201=20-=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=20api=20=E6=8F=90=E4=BA=A4=E7=89=A9=E5=93=81?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=20-=20=E6=94=AF=E6=8C=81=20JWT=20=E9=89=B4?= =?UTF-8?q?=E6=9D=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- JWT.py | 7 + auth.py | 270 +++++++++++++++++++++++++++ main.py | 68 +------ main_page.py | 150 --------------- model/__init__.py | 1 + model.py => model/database.py | 19 +- model/response.py | 6 + model/token.py | 13 ++ routes/backend/__init__.py | 2 + routes/backend/admin.py | 74 ++++++++ routes/backend/session.py | 51 +++++ admin.py => routes/frontend/admin.py | 19 +- found.py => routes/frontend/found.py | 2 +- routes/frontend/framework.py | 29 +++ login.py => routes/frontend/login.py | 65 +++++-- routes/frontend/main_page.py | 148 +++++++++++++++ static/heyfun.jpg | Bin 0 -> 97259 bytes tool.py | 18 +- 18 files changed, 695 insertions(+), 247 deletions(-) create mode 100644 JWT.py create mode 100644 auth.py delete mode 100644 main_page.py create mode 100644 model/__init__.py rename model.py => model/database.py (89%) create mode 100644 model/response.py create mode 100644 model/token.py create mode 100644 routes/backend/__init__.py create mode 100644 routes/backend/admin.py create mode 100644 routes/backend/session.py rename admin.py => routes/frontend/admin.py (95%) rename found.py => routes/frontend/found.py (99%) create mode 100644 routes/frontend/framework.py rename login.py => routes/frontend/login.py (53%) create mode 100644 routes/frontend/main_page.py create mode 100644 static/heyfun.jpg diff --git a/JWT.py b/JWT.py new file mode 100644 index 0000000..bd0437b --- /dev/null +++ b/JWT.py @@ -0,0 +1,7 @@ +from fastapi.security import OAuth2PasswordBearer +from model import database +import asyncio + +oauth2_scheme = OAuth2PasswordBearer(tokenUrl="/api/token") + +SECRET_KEY = asyncio.run(database.Database().get_setting('SECRET_KEY')) \ No newline at end of file diff --git a/auth.py b/auth.py new file mode 100644 index 0000000..a881de9 --- /dev/null +++ b/auth.py @@ -0,0 +1,270 @@ +from datetime import datetime, timedelta, timezone +from typing import Annotated + +import jwt +import json +from fastapi import Depends, HTTPException, status +from fastapi.security import OAuth2PasswordBearer, OAuth2PasswordRequestForm +from jwt.exceptions import InvalidTokenError +from passlib.context import CryptContext +from pydantic import BaseModel + +from nicegui import ui, app + +# 得到这样的字符串 / to get a string like this run: +# openssl rand -hex 32 +SECRET_KEY = "09d25e094faa6ca2556c818166b7a9563b93f7099f6f0f4caa6cf63b88e8d3e7" +ALGORITHM = "HS256" +ACCESS_TOKEN_EXPIRE_MINUTES = 30 + +# 模拟存储的用户名和密码(实际应用中应该从数据库或其他安全存储中获取) +# Emulate the username and password stored in the database (in real applications, you should get them from a database or other secure storage) +fake_users_db = { + "johndoe": { + "username": "johndoe", + "full_name": "John Doe", + "email": "johndoe@example.com", + "hashed_password": "$2b$12$EixZaYVK1fsbw1ZfbX3OXePaWxn96p36WQoeG6Lruj3vjPGga31lW", + "disabled": False, + } +} + +# FastAPI 鉴权模型 +# FastAPI authentication model +class Token(BaseModel): + access_token: str + token_type: str + + +class TokenData(BaseModel): + username: str | None = None + + +class User(BaseModel): + username: str + email: str | None = None + full_name: str | None = None + disabled: bool | None = None + + +class UserInDB(User): + hashed_password: str + +pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto") + +oauth2_scheme = OAuth2PasswordBearer(tokenUrl="/api/token") + +def verify_password(plain_password, hashed_password): + return pwd_context.verify(plain_password, hashed_password) + + +def get_password_hash(password): + return pwd_context.hash(password) + + +def get_user(db, username: str): + if username in db: + user_dict = db[username] + return UserInDB(**user_dict) + + +def authenticate_user(fake_db, username: str, password: str): + user = get_user(fake_db, username) + if not user: + return False + if not verify_password(password, user.hashed_password): + return False + return user + + +def create_access_token(data: dict, expires_delta: timedelta | None = None): + to_encode = data.copy() + if expires_delta: + expire = datetime.now(timezone.utc) + expires_delta + else: + expire = datetime.now(timezone.utc) + timedelta(minutes=15) + to_encode.update({"exp": expire}) + encoded_jwt = jwt.encode(to_encode, SECRET_KEY, algorithm=ALGORITHM) + return encoded_jwt + + +async def get_current_user(token: Annotated[str, Depends(oauth2_scheme)]): + credentials_exception = HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Could not validate credentials", + headers={"WWW-Authenticate": "Bearer"}, + ) + try: + payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) + username = payload.get("sub") + if username is None: + raise credentials_exception + token_data = TokenData(username=username) + except InvalidTokenError: + raise credentials_exception + user = get_user(fake_users_db, username=token_data.username) + if user is None: + raise credentials_exception + return user + + +async def get_current_active_user( + current_user: Annotated[User, Depends(get_current_user)], +): + if current_user.disabled: + raise HTTPException(status_code=400, detail="Inactive user") + return current_user + +# FastAPI 登录路由 / FastAPI login route +@app.post("/api/token") +async def login_for_access_token( + form_data: Annotated[OAuth2PasswordRequestForm, Depends()], +) -> Token: + user = authenticate_user(fake_users_db, form_data.username, form_data.password) + if not user: + raise HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Incorrect username or password", + headers={"WWW-Authenticate": "Bearer"}, + ) + access_token_expires = timedelta(minutes=ACCESS_TOKEN_EXPIRE_MINUTES) + access_token = create_access_token( + data={"sub": user.username}, expires_delta=access_token_expires + ) + return Token(access_token=access_token, token_type="bearer") + +# FastAPI 获取个人信息路由 / FastAPI get personal information route +@app.get("/api/profile") +async def profile( + current_user: Annotated[User, Depends(get_current_active_user)], + ): + """ + 需要鉴权的路由示例 + :param credentials: FastAPI 提供的用于解析HTTP Basic Auth头部的对象 + :return: 成功时返回鉴权成功的消息,否则返回鉴权失败的HTTP错误 + """ + return current_user + +# NiceGUI 获取个人信息路由 / NiceGUI get personal information route +@ui.page("/profile") +async def profile(): + """ + 需要鉴权的路由示例 + :param credentials: FastAPI 提供的用于解析HTTP Basic Auth头部的对象 + :return: 成功时返回鉴权成功的消息,否则返回鉴权失败的HTTP错误 + """ + ui.add_head_html(""" + + """) + await ui.context.client.connected() + result = await ui.run_javascript("getProfile()") + if result['status'] == 'success': + ui.label(f"Profile: {json.dumps(result['profile'])}") + ui.button("Logout", on_click=lambda: ui.run_javascript("logout()")) + else: + ui.label("Failed to fetch profile. Please login first.") + ui.button("Login", on_click=lambda: ui.navigate.to("/login")) + + +# 登录界面路由 / Login page route +@ui.page("/login") +async def login_page(): + """ + 登录界面路由示例 + :return: 一个登录页面 + """ + ui.add_head_html(""" + + """) + + async def try_login(): + username = usrname.value + password = pwd.value + + if username and password: + result = await ui.run_javascript(f"login('{username}', '{password}')") + if result['status'] == 'success': + ui.navigate.to("/profile") + else: + ui.notify("Login failed. Please try again.", type="negative") + usrname = ui.input("username") + pwd = ui.input("password", password=True) + ui.button("Login", on_click=try_login) + +# 公开路由 / Public page route +@ui.page("/") +async def public_data(): + """ + 公开路由示例 + :return: 一个公开的消息,无需鉴权 + """ + ui.label("This is a public page.") + +if __name__ in {"__main__", "__mp_main__"}: + ui.run(uvicorn_logging_level='debug') \ No newline at end of file diff --git a/main.py b/main.py index a30254e..c27a243 100644 --- a/main.py +++ b/main.py @@ -10,16 +10,13 @@ Copyright (c) 2018-2024 by 于小丘Yuerchu, All Rights Reserved. ''' from nicegui import app, ui -from fastapi import Request -from starlette.middleware.base import BaseHTTPMiddleware -from fastapi.responses import RedirectResponse, JSONResponse -import traceback - +import model.database import notfound -import main_page -import found -import login -import admin +from routes.frontend import main_page +from routes.frontend import found +from routes.frontend import login +from routes.frontend import admin +from routes.backend import session import model import asyncio import logging @@ -30,53 +27,7 @@ found.create() login.create() admin.create() -# 中间件配置文件 -AUTH_CONFIG = { - "restricted_routes": {'/admin'}, - "login_url": "/login", - "cookie_name": "session", - "session_expire": 3600 # 会话过期时间 -} - -def is_restricted_route(path: str) -> bool: - """判断路径是否为需要认证的受限路由""" - # NiceGUI 路由不受限制 - if path.startswith('/_nicegui'): - return False - - # 静态资源路径不受限制 - if path.startswith('/static'): - return False - - # 主题路径不受限制 - if path.startswith('/theme'): - return False - - # 后台路径始终受限 - if path.startswith('/admin'): - return True - - # 检查是否为受限的客户端页面路由 - if path.startswith('/dash') or path.startswith('/user'): - return True - -class AuthMiddleware(BaseHTTPMiddleware): - async def dispatch(self, request: Request, call_next): - try: - if not app.storage.user.get('authenticated', False): - path = request.url.path - - if is_restricted_route(path): - logging.warning(f"未认证用户尝试访问: {path}") - return RedirectResponse(f'/login?redirect_to={path}') - - return await call_next(request) - except Exception as e: - logging.error(f"服务器错误 Server error: {str(traceback.format_exc())}") - return JSONResponse(status_code=500, content={"detail": e}) - -# 添加中间件 Add middleware -app.add_middleware(AuthMiddleware) +app.include_router(session.Router) # 添加静态文件目录 try: @@ -86,16 +37,15 @@ except RuntimeError: # 启动函数 Startup function def startup(): - asyncio.run(model.Database().init_db()) + asyncio.run(model.database.Database().init_db()) ui.run( host='0.0.0.0', favicon='🚀', port=8080, title='Findreve', native=False, - storage_secret='findreve', language='zh-CN', - fastapi_docs=False) + fastapi_docs=True) if __name__ in {"__main__", "__mp_main__"}: startup() \ No newline at end of file diff --git a/main_page.py b/main_page.py deleted file mode 100644 index d535546..0000000 --- a/main_page.py +++ /dev/null @@ -1,150 +0,0 @@ -''' -Author: 于小丘 海枫 -Date: 2024-10-02 15:23:34 -LastEditors: Yuerchu admin@yuxiaoqiu.cn -LastEditTime: 2024-11-29 20:04:24 -FilePath: /Findreve/main_page.py -Description: Findreve 个人主页 main_page - -Copyright (c) 2018-2024 by 于小丘Yuerchu, All Rights Reserved. -''' - -from nicegui import ui -from fastapi import Request -import logging -import requests -import json -import model - - -def create() -> None: - @ui.page('/') - async def main_page(request: Request) -> None: - - dark_mode = ui.dark_mode(value=True) - - with ui.row(align_items='center').classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl p-24'): - with ui.column(align_items='center').classes('px-2 max-md:hidden'): - ui.chip('🐍 Python 是最好的语言').classes('text-xs -mt-1 -right-3').props('floating outline') - ui.chip('🎹 精通 FL Studio Mobile').classes('text-xs -mt-1').props('floating outline') - ui.chip('🎨 熟悉 Ps/Pr/Ae/Au/Ai').classes('text-xs -mt-1').props('floating outline') - ui.chip('🏎 热爱竞速(如地平线5)').classes('text-xs -mt-1 -right-3').props('floating outline') - with ui.avatar().classes('w-32 h-32 transition-transform duration-300 hover:scale-110 cursor-pointer'): - # 下面的这个是Base64格式,你需要改成你自己的头像,支持链接,也可以用Base64本地化 - ui.image( - 'data:image/jpeg;base64,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ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3hwYWNrZXQgZW5kPSJ3Ij8+AP/hAmhodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6SXB0YzR4bXBFeHQ9Imh0dHA6Ly9pcHRjLm9yZy9zdGQvSXB0YzR4bXBFeHQvMjAwOC0wMi0yOS8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyI+CiAgICAgICAgIDxJcHRjNHhtcEV4dDpBcnR3b3JrVGl0bGU+5pyq5ZG95ZCN5L2c5ZOBPC9JcHRjNHhtcEV4dDpBcnR3b3JrVGl0bGU+CiAgICAgICAgIDxkYzp0aXRsZT4KICAgICAgICAgICAgPHJkZjpBbHQ+CiAgICAgICAgICAgICAgIDxyZGY6bGkgeG1sOmxhbmc9IngtZGVmYXVsdCI+5pyq5ZG95ZCN5L2c5ZOBPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOkFsdD4KICAgICAgICAgPC9kYzp0aXRsZT4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cv/tADhQaG90b3Nob3AgMy4wADhCSU0EBAAAAAAAADhCSU0EJQAAAAAAENQdjNmPALIE6YAJmOz4Qn7/7QBcUGhvdG9zaG9wIDMuMAA4QklNBAQAAAAAACMcAVoAAxslRxwCAAACAAIcAgUAD+acquWRveWQjeS9nOWTgQA4QklNBCUAAAAAABCFLAIhbf++LKxCtiFVrQ6l/8AAEQgDAQMBAwEiAAIRAQMRAf/EAB8AAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMFBQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC//EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/bAEMAAQEBAQEBAgEBAgMCAgIDBAMDAwMEBQQEBAQEBQYFBQUFBQUGBgYGBgYGBgcHBwcHBwgICAgICQkJCQkJCQkJCf/bAEMBAQEBAgICBAICBAkGBQYJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCf/dAAQAMf/aAAwDAQACEQMRAD8A/uYooor8/PxcKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA/9D+5iiiivz8/FwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD/0f7mKKKK/Pz8XCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAP/S/uYooor8/PxcKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiimu6RqXcgAckmgB1eceN/iz4B+HltJc+KdShtRGpchnAOB7da+EP24f8AgoZ4E/Zk8J3otZVuL5EwCh3BWPAHHVieAK/jV+Mv7ZPx+/aP8bX+rSalc2dlOXWNA53qp9WPK/8AAcY6c9Ty4rG06KvNn7P4X+CGb8TycsOuWmt5Pa/Zaav+na5/fL8NP2mPg58WbqWy8FazBdSxHDIrDOfpXvQIYblOQa/zcPhX8eP2gP2etaGv+FdSeY85EhLHnqQ4+YH3JI9q/od/4J//APBaq28WXUPgD45u0dwPl81hkjoM5H3h6nqO49YwuYUq2kHqe54jfRyz3IIPEcvtKS3cdbeqtdfdbzP6c6KwvDniXRPFelQ61oNwlzbzoHR0OQQeRW7Xafz6007MKKKKBBRRRQAUUU0ug6kUAOoqnLqFhAMzzxp/vMB/M1R/4STw7u2fb7bPp5qZ/nTsx8rNqisldf0JzhL2A/SRf8avx3VrMN0UisPUEGiwcrJ6KAQeRRSEFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAH//0/7mKKKK/Pz8XCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKK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UUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAf/9T+5iiiivz8/FwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA4D4kfDTwl8VfDU3hbxhbLc2sowQwyR7ivjTUf2L9M8DabHD8NJZY1XgpkcL7ZBHFfoVRXVhMbVoS56Mmn5G0a8lHkeq7Hx38Hv2SfAXgHxx/wt6eFpvEU0AgkuJiGkCDPyKQAFHJJAAyetfYlFFZVq06knOo7tk1Krla/QKKKKyMwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAP/9X+5iiiivz8/FwooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD/1v7mKKKK/Pz8XCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAP/X/uYooor8/PxcKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA/9k=' - ).classes('w-32 h-32') - with ui.column().classes('px-2 max-md:hidden'): - ui.chip('喜欢去广州图书馆看书 📕').classes('text-xs -mt-1 -left-3').props('floating outline') - ui.chip('致力做安卓苹果开发者 📱').classes('text-xs -mt-1').props('floating outline') - ui.chip('正在自研全链个人生态 🔧').classes('text-xs -mt-1').props('floating outline') - ui.chip('致力与开源社区同发展 🤝').classes('text-xs -mt-1 -left-3').props('floating outline') - - ui.label('关于本站').classes('w-full text-4xl text-bold text-center py-6 subpixel-antialiased') - - with ui.row().classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl py-4'): - with ui.card().classes('w-full sm:w-1/5 lg:w-1/7 flex-grow p-8 bg-gradient-to-br from-indigo-700 to-blue-500'): - ui.label('你好,很高兴认识你👋').classes('text-md text-white') - with ui.row(align_items='center'): - ui.label('我叫').classes('text-4xl text-bold text-white -mt-1 subpixel-antialiased') - ui.label('于小丘').classes('text-4xl text-bold text-white -mt-1 subpixel-antialiased').tooltip('英文名叫Yuerchu,也可以叫我海枫') - ui.label('是一名 开发者、音乐人').classes('text-md text-white -mt-1') - with ui.card().classes('w-full sm:w-1/2 lg:w-1/4 flex-grow flex flex-col justify-center'): - ui.code('void main() {\n printf("为了尚未完成的未来");\n}', language='c').classes('text-3xl max-[768px]:text-xl text-bold text-white flex-grow w-full h-full') - - with ui.row().classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl -mt-3'): - with ui.card().classes('w-full sm:w-1/2 lg:w-1/4 flex-grow p-4'): - ui.label('技能').classes('text-md text-gray-500') - ui.label('开启创造力').classes('text-4xl text-bold -mt-1 right-4') - - with ui.row().classes('items-center'): - ui.chip('Python', color='amber-400').classes('p-4').props('floating').tooltip('Python是世界上最好的语言') - ui.chip('Kotlin', color='violet-400').classes('p-4').props('floating').tooltip('Kotlin给安卓开发APP') - ui.chip('Golang', color='sky-400').classes('p-4').props('floating').tooltip('Golang写后端') - ui.chip('Lua', color='blue-900').classes('p-4').props('floating').tooltip('用aLua给安卓开发,给罗技鼠标写鼠标宏') - ui.chip('c', color='red-400').classes('p-4').props('floating').tooltip('C写嵌入式开发') - ui.chip('FL Studio', color='orange-600').classes('p-4').props('floating').tooltip('FL Studio是世界上最好的宿主') - ui.chip('Photoshop', color='blue-950').classes('p-4').props('floating').tooltip('修图/抠图/画画一站通') - ui.chip('Premiere', color='indigo-900').classes('p-4').props('floating').tooltip('剪视频比较顺手,但是一开风扇狂转') - ui.chip('After Effects', color='indigo-950').classes('p-4').props('floating').tooltip('制作特效,电脑太烂了做不了太花的') - ui.chip('Audition', color='purple-900').classes('p-4').props('floating').tooltip('写歌做母带挺好用的') - ui.chip('Illustrator', color='amber-800').classes('p-4').props('floating').tooltip('自制字体和画动态SVG') - ui.chip('HTML', color='red-900').classes('p-4').props('floating').tooltip('前端入门三件套,不学这玩意其他学了没用') - ui.chip('CSS3', color='cyan-900').classes('p-4').props('floating').tooltip('. window{ show: none; }') - ui.chip('JavaScript', color='lime-900').classes('p-4').props('floating').tooltip('还在努力学习中,只会一些简单的') - ui.chip('git', color='amber-700').classes('p-4').props('floating').tooltip('版本管理是真好用') - ui.chip('Docker', color='sky-600').classes('p-4').props('floating').tooltip('容器化部署') - ui.chip('chatGPT', color='emerald-600').classes('p-4').props('floating').tooltip('文本助驾,写代码/写文章/写论文') - ui.chip('SAI2', color='gray-950').classes('p-4').props('floating').tooltip('入门绘画') - ui.chip('ips Draw', color='gray-900').classes('p-4').props('floating').tooltip('自认为是iOS端最佳绘画软件') - ui.chip('AutoCAD', color='gray-950').classes('p-4').props('floating').tooltip('画图/绘制电路图') - ui.chip('SolidWorks', color='gray-900').classes('p-4').props('floating').tooltip('画图/绘制3D模型') - ui.chip('EasyEDA', color='gray-950').classes('p-4').props('floating').tooltip('画图/绘制电路图') - ui.chip('KiCad', color='gray-900').classes('p-4').props('floating').tooltip('画图/绘制电路图') - ui.chip('Altium Designer', color='gray-950').classes('p-4').props('floating').tooltip('画图/绘制电路图') - ui.label('...').classes('text-md text-gray-500') - with ui.card().classes('w-full sm:w-1/3 lg:w-1/6 flex-grow flex flex-col justify-center'): - ui.label('生涯').classes('text-md text-gray-500') - ui.label('无限进步').classes('text-4xl text-bold -mt-1 right-4') - - with ui.timeline(side='right', layout='comfortable'): - ui.timeline_entry('那天,我买了第一台服务器,并搭建了我第一个Wordpress站点', - title='梦开始的地方', - subtitle='2022年1月21日') - ui.timeline_entry('准备从Cloudreve项目脱离,自建网盘系统DiskNext', - title='自建生态计划开始', - subtitle='2024年3月1日') - ui.timeline_entry('目前正在开发HeyAuth、Findreve、DiskNext', - title='项目框架仍在研发中', - subtitle='现在', - icon='rocket') - - - - ui.label('我的作品').classes('w-full text-center text-2xl text-bold p-4') - - with ui.row().classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl'): - with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): - with ui.row().classes('items-center w-full -mt-2'): - ui.label('DiskNext').classes('text-lg text-bold') - ui.chip('B端程序').classes('text-xs').props('floating') - ui.space() - ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://pan.yxqi.cn'))).props('flat fab-mini') - ui.label('一个基于NiceGUI的网盘系统,性能与Golang媲美').classes('text-sm -mt-3') - with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): - with ui.row().classes('items-center w-full -mt-2'): - ui.label('Findreve').classes('text-lg text-bold') - ui.chip('C端程序').classes('text-xs').props('floating') - ui.space() - ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://i.yxqi.cn'))).props('flat fab-mini') - ui.label('一个基于NiceGUI的个人主页配合物品丢失找回系统').classes('text-sm -mt-3') - with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): - with ui.row().classes('items-center w-full -mt-2'): - ui.label('HeyAuth').classes('text-lg text-bold') - ui.chip('B端程序').classes('text-xs').props('floating') - ui.space() - ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://auth.yxqi.cn'))).props('flat fab-mini') - ui.label('一个基于NiceGUI的B+C端多应用授权系统').classes('text-sm -mt-3') - - with ui.row().classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl'): - with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): - with ui.row().classes('items-center w-full -mt-2'): - ui.label('与枫同奔 Run With Fun').classes('text-lg text-bold') - ui.chip('词曲').classes('text-xs').props('floating') - ui.space() - ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://music.163.com/#/song?id=2148944359'))).props('flat fab-mini') - ui.label('我愿如流星赶月那样飞奔').classes('text-sm -mt-3') - with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): - with ui.row().classes('items-center w-full -mt-2'): - ui.label('HeyFun\'s Story').classes('text-lg text-bold') - ui.chip('自设印象曲').classes('text-xs').props('floating') - ui.space() - ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://music.163.com/#/song?id=1889436124'))).props('flat fab-mini') - ui.label('飞奔在星辰大海之间的少年').classes('text-sm -mt-3') - with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): - with ui.row().classes('items-center w-full -mt-2'): - ui.label('2020Fall').classes('text-lg text-bold') - ui.chip('年度纯音乐').classes('text-xs').props('floating') - ui.space() - ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://music.163.com/#/song?id=1863630345'))).props('flat fab-mini') - ui.label('耗时6个月完成的年度纯音乐').classes('text-sm -mt-3') diff --git a/model/__init__.py b/model/__init__.py new file mode 100644 index 0000000..d0d2fd8 --- /dev/null +++ b/model/__init__.py @@ -0,0 +1 @@ +from . import token \ No newline at end of file diff --git a/model.py b/model/database.py similarity index 89% rename from model.py rename to model/database.py index ccd765d..147c366 100644 --- a/model.py +++ b/model/database.py @@ -90,6 +90,15 @@ class Database: logging.info("插入初始密码信息") print(f"密码(请牢记,后续不再显示): {password}") + async with db.execute("SELECT name FROM fr_settings WHERE name = 'SECRET_KEY'") as cursor: + if not await cursor.fetchone(): + secret_key = tool.generate_password(64) + await db.execute( + "INSERT INTO fr_settings (type, name, value) VALUES (?, ?, ?)", + ('string', 'SECRET_KEY', secret_key) + ) + logging.info("插入初始密钥信息") + await db.commit() logging.info("数据库初始化完成并提交更改") @@ -118,7 +127,6 @@ class Database: """更新对象信息 :param id: 对象ID - :param key: 序列号 :param kwargs: 更新字段 """ set_values = ", ".join([f"{k} = ?" for k in kwargs.keys()]) @@ -147,6 +155,15 @@ class Database: async with db.execute("SELECT * FROM fr_objects") as cursor: return await cursor.fetchall() + async def delete_object(self, id: int): + """删除对象 + + :param id: 对象ID + """ + async with aiosqlite.connect(self.db_path) as db: + await db.execute("DELETE FROM fr_objects WHERE id = ?", (id,)) + await db.commit() + async def set_setting(self, name: str, value: str): """设置配置项 diff --git a/model/response.py b/model/response.py new file mode 100644 index 0000000..23bb85a --- /dev/null +++ b/model/response.py @@ -0,0 +1,6 @@ +from pydantic import BaseModel + +class DefaultResponse(BaseModel): + code: int = 0 + data: dict | list | None = None + msg: str = "" \ No newline at end of file diff --git a/model/token.py b/model/token.py new file mode 100644 index 0000000..87ca038 --- /dev/null +++ b/model/token.py @@ -0,0 +1,13 @@ +from pydantic import BaseModel +from passlib.context import CryptContext + +# FastAPI 鉴权模型 +# FastAPI authentication model +class Token(BaseModel): + access_token: str + token_type: str + +class TokenData(BaseModel): + username: str | None = None + +pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto") \ No newline at end of file diff --git a/routes/backend/__init__.py b/routes/backend/__init__.py new file mode 100644 index 0000000..03c5e49 --- /dev/null +++ b/routes/backend/__init__.py @@ -0,0 +1,2 @@ +from . import admin +from . import session \ No newline at end of file diff --git a/routes/backend/admin.py b/routes/backend/admin.py new file mode 100644 index 0000000..2b79b5b --- /dev/null +++ b/routes/backend/admin.py @@ -0,0 +1,74 @@ +from nicegui import app +from typing import Annotated +from fastapi import Depends +from fastapi import HTTPException, status +from jwt import InvalidTokenError +import jwt, JWT +from model import database +from model import token as Token +from model.response import DefaultResponse + +async def is_admin(token: Annotated[str, Depends(JWT.oauth2_scheme)]): + credentials_exception = HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Login required", + headers={"WWW-Authenticate": "Bearer"}, + ) + try: + payload = jwt.decode(token, JWT.SECRET_KEY, algorithms=["HS256"]) + username = payload.get("sub") + if username is None: + raise credentials_exception + except InvalidTokenError: + raise credentials_exception + if not username == await database.Database().get_setting('account'): + raise credentials_exception + token_data = Token.TokenData(username=username) + return True + +@app.get('/api/items') +async def get_items( + is_admin: Annotated[str, Depends(is_admin)], + id: int = None, + key: str = None): + items = await database.Database().get_object(id=id, key=key) + return DefaultResponse(data=items) + +@app.post('/api/items') +async def add_items( + is_admin: Annotated[str, Depends(is_admin)], + key: str, + name: str, + icon: str, + phone: str): + try: + await database.Database().add_object( + key=key, name=name, icon=icon, phone=phone) + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + else: + return DefaultResponse() + +@app.patch('/api/items') +async def update_items( + is_admin: Annotated[str, Depends(is_admin)], + id: int, + **kwargs): + try: + await database.Database().update_object( + id=id, **kwargs) + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + else: + return DefaultResponse() + +@app.delete('/api/items') +async def delete_items( + is_admin: Annotated[str, Depends(is_admin)], + id: int): + try: + await database.Database().delete_object(id=id) + except Exception as e: + raise HTTPException(status_code=500, detail=str(e)) + else: + return DefaultResponse() \ No newline at end of file diff --git a/routes/backend/session.py b/routes/backend/session.py new file mode 100644 index 0000000..3ae230f --- /dev/null +++ b/routes/backend/session.py @@ -0,0 +1,51 @@ +from nicegui import app +from typing import Annotated +from datetime import datetime, timedelta, timezone +from fastapi import Depends, HTTPException, status +from fastapi.security import OAuth2PasswordRequestForm +from fastapi import APIRouter +import jwt, JWT + +from model.token import Token +from model import database +from tool import verify_password + +Router = APIRouter() + +def create_access_token(data: dict, expires_delta: timedelta | None = None): + to_encode = data.copy() + if expires_delta: + expire = datetime.now(timezone.utc) + expires_delta + else: + expire = datetime.now(timezone.utc) + timedelta(minutes=15) + to_encode.update({"exp": expire}) + encoded_jwt = jwt.encode(to_encode, JWT.SECRET_KEY, algorithm='HS256') + return encoded_jwt + +async def authenticate_user(username: str, password: str): + # 验证账号和密码 + account = await database.Database().get_setting('account') + stored_password = await database.Database().get_setting('password') + + if account != username or not verify_password(stored_password, password): + return False + + return {'is_authenticated': True} + +# FastAPI 登录路由 / FastAPI login route +@app.post("/api/token") +async def login_for_access_token( + form_data: Annotated[OAuth2PasswordRequestForm, Depends()], +) -> Token: + user = await authenticate_user(form_data.username, form_data.password) + if not user: + raise HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Incorrect username or password", + headers={"WWW-Authenticate": "Bearer"}, + ) + access_token_expires = timedelta(hours=1) + access_token = create_access_token( + data={"sub": form_data.username}, expires_delta=access_token_expires + ) + return Token(access_token=access_token, token_type="bearer") \ No newline at end of file diff --git a/admin.py b/routes/frontend/admin.py similarity index 95% rename from admin.py rename to routes/frontend/admin.py index 745beec..eeda900 100644 --- a/admin.py +++ b/routes/frontend/admin.py @@ -16,6 +16,7 @@ import qrcode import base64 from io import BytesIO from fastapi import Request +import model.database from tool import * from datetime import datetime @@ -112,7 +113,7 @@ def create(): object_key.set_value(generate_password()) try: - await model.Database().add_object(key=object_key.value, name=object_name.value, icon=object_icon.value, phone=object_phone.value) + await model.database.Database().add_object(key=object_key.value, name=object_name.value, icon=object_icon.value, phone=object_phone.value) except ValueError as e: ui.notify(str(e), color='negative') else: @@ -187,11 +188,11 @@ def create(): try: # 获取选中物品 object_id = object_table.selected[0]['id'] - await model.Database().update_object(id=object_id, status='lost') - await model.Database().update_object(id=object_id, lost_at=datetime.now().strftime("%Y-%m-%d %H:%M:%S")) + await model.database.Database().update_object(id=object_id, status='lost') + await model.database.Database().update_object(id=object_id, lost_at=datetime.now().strftime("%Y-%m-%d %H:%M:%S")) # 如果设置了留言,则更新留言 if lostReason.value != "": - await model.Database().update_object(id=object_id, context=lostReason.value) + await model.database.Database().update_object(id=object_id, context=lostReason.value) except Exception as e: ui.notify(str(e), color='negative') else: @@ -227,10 +228,10 @@ def create(): async def findObject(): try: object_id = object_table.selected[0]['id'] - await model.Database().update_object(id=object_id, status='ok') - await model.Database().update_object(id=object_id, context=None) - await model.Database().update_object(id=object_id, find_ip=None) - await model.Database().update_object(id=object_id, lost_at=None) + await model.database.Database().update_object(id=object_id, status='ok') + await model.database.Database().update_object(id=object_id, context=None) + await model.database.Database().update_object(id=object_id, find_ip=None) + await model.database.Database().update_object(id=object_id, lost_at=None) except Exception as e: ui.notify(str(e), color='negative') else: @@ -261,7 +262,7 @@ def create(): async def fetch_and_process_objects(): # 获取所有物品 objects = [dict(zip(['id', 'key', 'name', 'icon', 'status', 'phone', 'context', - 'find_ip', 'create_at', 'lost_at'], obj)) for obj in await model.Database().get_object()] + 'find_ip', 'create_at', 'lost_at'], obj)) for obj in await model.database.Database().get_object()] status_map = {'ok': '正常', 'lost': '丢失'} for obj in objects: obj['status'] = status_map.get(obj['status'], obj['status']) diff --git a/found.py b/routes/frontend/found.py similarity index 99% rename from found.py rename to routes/frontend/found.py index 550acc1..2e9a9f5 100644 --- a/found.py +++ b/routes/frontend/found.py @@ -11,7 +11,7 @@ Copyright (c) 2018-2024 by 于小丘Yuerchu, All Rights Reserved. from nicegui import ui from fastapi import Request -from model import Database +from model.database import Database from tool import format_phone def create() -> None: diff --git a/routes/frontend/framework.py b/routes/frontend/framework.py new file mode 100644 index 0000000..5b18ab2 --- /dev/null +++ b/routes/frontend/framework.py @@ -0,0 +1,29 @@ +from contextlib import contextmanager +from nicegui import ui +from fastapi import Request + +@contextmanager +def frame(request: Request): + with ui.header() \ + .classes('items-center duration-300 py-2 px-5 no-wrap') \ + .style('box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1)'): + with ui.tabs(value='main_page') as tabs: + ui.button(icon='menu', on_click=lambda: left_drawer.toggle()).props('flat color=white round') + ui.button(text="Findreve 仪表盘").classes('text-lg').props('flat color=white no-caps') + + with ui.left_drawer() as left_drawer: + with ui.column().classes('w-full'): + ui.image('/static/Findreve.png').classes('w-1/2 mx-auto') + ui.label('Findreve').classes('text-2xl text-bold') + ui.label("免费版,无需授权").classes('text-red-600 -mt-3') + + ui.button('首页 & 信息', icon='fingerprint', on_click=lambda: ui.navigate.to('/admin/home')) \ + .classes('w-full').props('flat no-caps') + ui.button('物品 & 库存', icon='settings', on_click=lambda: ui.navigate.to('/admin/item')) \ + .classes('w-full').props('flat no-caps') + ui.button('产品 & 授权', icon='settings', on_click=lambda: ui.navigate.to('/admin/auth')) \ + .classes('w-full').props('flat no-caps') + ui.button('关于 & 反馈', icon='settings', on_click=lambda: ui.navigate.to('/admin/about')) \ + .classes('w-full').props('flat no-caps') + + yield \ No newline at end of file diff --git a/login.py b/routes/frontend/login.py similarity index 53% rename from login.py rename to routes/frontend/login.py index 96163a4..2932714 100644 --- a/login.py +++ b/routes/frontend/login.py @@ -11,17 +11,46 @@ Copyright (c) 2018-2024 by 于小丘Yuerchu, All Rights Reserved. from nicegui import ui, app from typing import Optional -import model -import tool from fastapi.responses import RedirectResponse from fastapi import Request def create() -> Optional[RedirectResponse]: @ui.page('/login') async def session(request: Request, redirect_to: str = "/"): - # 检测是否已登录 - if app.storage.user.get('authenticated', False): - return ui.navigate.to(redirect_to) + ui.add_head_html(""" + + """) ui.page_title('登录 Findreve') async def try_login() -> None: @@ -34,18 +63,14 @@ def create() -> Optional[RedirectResponse]: ui.notify('账号或密码不能为空', color='negative') return - # 验证账号和密码 - account = await model.Database().get_setting('account') - stored_password = await model.Database().get_setting('password') - - if account != username.value or not tool.verify_password(stored_password, password.value, debug=True): - ui.notify('账号或密码错误', color='negative') - return - - # 存储用户信息 - app.storage.user.update({'authenticated': True}) - # 跳转到用户上一页 - ui.navigate.to(redirect_to) + try: + result = await ui.run_javascript(f"login('{username}', '{password}')") + if result['status'] == 'success': + ui.navigate.to(redirect_to) + else: + ui.notify("账号或密码错误", type="negative") + except Exception as e: + ui.notify(f"登录失败: {str(e)}", type="negative") with ui.header() \ @@ -59,12 +84,12 @@ def create() -> Optional[RedirectResponse]: with ui.card().classes('absolute-center round-lg').style('width: 70%; max-width: 500px'): # 登录标签 ui.button(icon='lock').props('outline round').classes('mx-auto w-auto shadow-sm w-fill') - ui.label('登录 HeyPress').classes('text-h5 w-full text-center') + ui.label('登录 Findreve').classes('text-h5 w-full text-center') # 用户名/密码框 username = ui.input('账号').on('keydown.enter', try_login) \ - .classes('block w-full text-gray-900').props('rounded outlined') + .classes('block w-full text-gray-900').props('filled') password = ui.input('密码', password=True, password_toggle_button=True) \ - .on('keydown.enter', try_login).classes('block w-full text-gray-900').props('rounded outlined') + .on('keydown.enter', try_login).classes('block w-full text-gray-900').props('filled') # 按钮布局 ui.button('登录', on_click=lambda: login()).classes('items-center w-full').props('rounded') diff --git a/routes/frontend/main_page.py b/routes/frontend/main_page.py new file mode 100644 index 0000000..d71a40e --- /dev/null +++ b/routes/frontend/main_page.py @@ -0,0 +1,148 @@ +''' +Author: 于小丘 海枫 +Date: 2024-10-02 15:23:34 +LastEditors: Yuerchu admin@yuxiaoqiu.cn +LastEditTime: 2024-11-29 20:04:24 +FilePath: /Findreve/main_page.py +Description: Findreve 个人主页 main_page + +Copyright (c) 2018-2024 by 于小丘Yuerchu, All Rights Reserved. +''' + +from nicegui import ui +from fastapi import Request +import logging +import requests +import json +import model + + +def create() -> None: + @ui.page('/') + async def main_page(request: Request) -> None: + + dark_mode = ui.dark_mode(value=True) + + with ui.row(align_items='center').classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl p-24'): + with ui.column(align_items='center').classes('px-2 max-md:hidden'): + ui.chip('🐍 Python 是最好的语言').classes('text-xs -mt-1 -right-3').props('floating outline') + ui.chip('🎹 精通 FL Studio Mobile').classes('text-xs -mt-1').props('floating outline') + ui.chip('🎨 熟悉 Ps/Pr/Ae/Au/Ai').classes('text-xs -mt-1').props('floating outline') + ui.chip('🏎 热爱竞速(如地平线5)').classes('text-xs -mt-1 -right-3').props('floating outline') + with ui.avatar().classes('w-32 h-32 transition-transform duration-300 hover:scale-110 cursor-pointer'): + # 下面的这个是Base64格式,你需要改成你自己的头像,支持链接,也可以用Base64本地化 + ui.image('/static/heyfun.jpg').classes('w-32 h-32') + with ui.column().classes('px-2 max-md:hidden'): + ui.chip('喜欢去广州图书馆看书 📕').classes('text-xs -mt-1 -left-3').props('floating outline') + ui.chip('致力做安卓苹果开发者 📱').classes('text-xs -mt-1').props('floating outline') + ui.chip('正在自研全链个人生态 🔧').classes('text-xs -mt-1').props('floating outline') + ui.chip('致力与开源社区同发展 🤝').classes('text-xs -mt-1 -left-3').props('floating outline') + + ui.label('关于本站').classes('w-full text-4xl text-bold text-center py-6 subpixel-antialiased') + + with ui.row().classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl py-4'): + with ui.card().classes('w-full sm:w-1/5 lg:w-1/7 flex-grow p-8 bg-gradient-to-br from-indigo-700 to-blue-500'): + ui.label('你好,很高兴认识你👋').classes('text-md text-white') + with ui.row(align_items='center'): + ui.label('我叫').classes('text-4xl text-bold text-white -mt-1 subpixel-antialiased') + ui.label('于小丘').classes('text-4xl text-bold text-white -mt-1 subpixel-antialiased').tooltip('英文名叫Yuerchu,也可以叫我海枫') + ui.label('是一名 开发者、音乐人').classes('text-md text-white -mt-1') + with ui.card().classes('w-full sm:w-1/2 lg:w-1/4 flex-grow flex flex-col justify-center'): + ui.code('void main() {\n printf("为了尚未完成的未来");\n}', language='c').classes('text-3xl max-[768px]:text-xl text-bold text-white flex-grow w-full h-full') + + with ui.row().classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl -mt-3'): + with ui.card().classes('w-full sm:w-1/2 lg:w-1/4 flex-grow p-4'): + ui.label('技能').classes('text-md text-gray-500') + ui.label('开启创造力').classes('text-4xl text-bold -mt-1 right-4') + + with ui.row().classes('items-center'): + ui.chip('Python', color='amber-400').classes('p-4').props('floating').tooltip('Python是世界上最好的语言') + ui.chip('Kotlin', color='violet-400').classes('p-4').props('floating').tooltip('Kotlin给安卓开发APP') + ui.chip('Golang', color='sky-400').classes('p-4').props('floating').tooltip('Golang写后端') + ui.chip('Lua', color='blue-900').classes('p-4').props('floating').tooltip('用aLua给安卓开发,给罗技鼠标写鼠标宏') + ui.chip('c', color='red-400').classes('p-4').props('floating').tooltip('C写嵌入式开发') + ui.chip('FL Studio', color='orange-600').classes('p-4').props('floating').tooltip('FL Studio是世界上最好的宿主') + ui.chip('Photoshop', color='blue-950').classes('p-4').props('floating').tooltip('修图/抠图/画画一站通') + ui.chip('Premiere', color='indigo-900').classes('p-4').props('floating').tooltip('剪视频比较顺手,但是一开风扇狂转') + ui.chip('After Effects', color='indigo-950').classes('p-4').props('floating').tooltip('制作特效,电脑太烂了做不了太花的') + ui.chip('Audition', color='purple-900').classes('p-4').props('floating').tooltip('写歌做母带挺好用的') + ui.chip('Illustrator', color='amber-800').classes('p-4').props('floating').tooltip('自制字体和画动态SVG') + ui.chip('HTML', color='red-900').classes('p-4').props('floating').tooltip('前端入门三件套,不学这玩意其他学了没用') + ui.chip('CSS3', color='cyan-900').classes('p-4').props('floating').tooltip('. window{ show: none; }') + ui.chip('JavaScript', color='lime-900').classes('p-4').props('floating').tooltip('还在努力学习中,只会一些简单的') + ui.chip('git', color='amber-700').classes('p-4').props('floating').tooltip('版本管理是真好用') + ui.chip('Docker', color='sky-600').classes('p-4').props('floating').tooltip('容器化部署') + ui.chip('chatGPT', color='emerald-600').classes('p-4').props('floating').tooltip('文本助驾,写代码/写文章/写论文') + ui.chip('SAI2', color='gray-950').classes('p-4').props('floating').tooltip('入门绘画') + ui.chip('ips Draw', color='gray-900').classes('p-4').props('floating').tooltip('自认为是iOS端最佳绘画软件') + ui.chip('AutoCAD', color='gray-950').classes('p-4').props('floating').tooltip('画图/绘制电路图') + ui.chip('SolidWorks', color='gray-900').classes('p-4').props('floating').tooltip('画图/绘制3D模型') + ui.chip('EasyEDA', color='gray-950').classes('p-4').props('floating').tooltip('画图/绘制电路图') + ui.chip('KiCad', color='gray-900').classes('p-4').props('floating').tooltip('画图/绘制电路图') + ui.chip('Altium Designer', color='gray-950').classes('p-4').props('floating').tooltip('画图/绘制电路图') + ui.label('...').classes('text-md text-gray-500') + with ui.card().classes('w-full sm:w-1/3 lg:w-1/6 flex-grow flex flex-col justify-center'): + ui.label('生涯').classes('text-md text-gray-500') + ui.label('无限进步').classes('text-4xl text-bold -mt-1 right-4') + + with ui.timeline(side='right', layout='comfortable'): + ui.timeline_entry('那天,我买了第一台服务器,并搭建了我第一个Wordpress站点', + title='梦开始的地方', + subtitle='2022年1月21日') + ui.timeline_entry('准备从Cloudreve项目脱离,自建网盘系统DiskNext', + title='自建生态计划开始', + subtitle='2024年3月1日') + ui.timeline_entry('目前正在开发HeyAuth、Findreve、DiskNext', + title='项目框架仍在研发中', + subtitle='现在', + icon='rocket') + + + + ui.label('我的作品').classes('w-full text-center text-2xl text-bold p-4') + + with ui.row().classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl'): + with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): + with ui.row().classes('items-center w-full -mt-2'): + ui.label('DiskNext').classes('text-lg text-bold') + ui.chip('B端程序').classes('text-xs').props('floating') + ui.space() + ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://pan.yxqi.cn'))).props('flat fab-mini') + ui.label('一个基于NiceGUI的网盘系统,性能与Golang媲美').classes('text-sm -mt-3') + with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): + with ui.row().classes('items-center w-full -mt-2'): + ui.label('Findreve').classes('text-lg text-bold') + ui.chip('C端程序').classes('text-xs').props('floating') + ui.space() + ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://i.yxqi.cn'))).props('flat fab-mini') + ui.label('一个基于NiceGUI的个人主页配合物品丢失找回系统').classes('text-sm -mt-3') + with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): + with ui.row().classes('items-center w-full -mt-2'): + ui.label('HeyAuth').classes('text-lg text-bold') + ui.chip('B端程序').classes('text-xs').props('floating') + ui.space() + ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://auth.yxqi.cn'))).props('flat fab-mini') + ui.label('一个基于NiceGUI的B+C端多应用授权系统').classes('text-sm -mt-3') + + with ui.row().classes('w-full items-center justify-center items-stretch mx-auto mx-8 max-w-7xl'): + with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): + with ui.row().classes('items-center w-full -mt-2'): + ui.label('与枫同奔 Run With Fun').classes('text-lg text-bold') + ui.chip('词曲').classes('text-xs').props('floating') + ui.space() + ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://music.163.com/#/song?id=2148944359'))).props('flat fab-mini') + ui.label('我愿如流星赶月那样飞奔').classes('text-sm -mt-3') + with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): + with ui.row().classes('items-center w-full -mt-2'): + ui.label('HeyFun\'s Story').classes('text-lg text-bold') + ui.chip('自设印象曲').classes('text-xs').props('floating') + ui.space() + ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://music.163.com/#/song?id=1889436124'))).props('flat fab-mini') + ui.label('飞奔在星辰大海之间的少年').classes('text-sm -mt-3') + with ui.card().classes('w-full sm:w-1/3 lg:w-1/5 flex-grow p-4'): + with ui.row().classes('items-center w-full -mt-2'): + ui.label('2020Fall').classes('text-lg text-bold') + ui.chip('年度纯音乐').classes('text-xs').props('floating') + ui.space() + ui.button(icon='open_in_new', on_click=lambda: (ui.navigate.to('https://music.163.com/#/song?id=1863630345'))).props('flat fab-mini') + ui.label('耗时6个月完成的年度纯音乐').classes('text-sm -mt-3') diff --git a/static/heyfun.jpg b/static/heyfun.jpg new file mode 100644 index 0000000000000000000000000000000000000000..07fb6af8802d716ec3abe94610a5c97efff79566 GIT binary patch literal 97259 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¨S@0al-!_m%i3H?f3vJ73N$?lKjHj$Mp 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

{+b4t+J{pVzMzd(5yZ2o?(tI;_#`Jj!R9C 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�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 str: - # 定义密码字符集,大小写字母和数字 - characters = string.ascii_letters + string.digits - # 随机选择length个字符,生成密码 - password = ''.join(random.choice(characters) for i in range(length)) - return password + """ + 生成指定长度的随机密码。 + + :param length: 密码长度 + :type length: int + :return: 随机密码 + :rtype: str + """ + import secrets + + return secrets.token_hex(length) def hash_password(password: str) -> str: """