wip: 切片上传、文件秒传、断点续传陆续适配中当前进度(本地存储已适配)

This commit is contained in:
Lan
2025-02-23 20:49:51 +08:00
parent 3da6eb9903
commit b53b9f5891
30 changed files with 622 additions and 178 deletions
+8 -1
View File
@@ -14,12 +14,13 @@ from tortoise.contrib.fastapi import register_tortoise
from apps.base.models import KeyValue
from apps.base.utils import ip_limit
from apps.base.views import share_api
from apps.base.views import share_api, chunk_api
from apps.admin.views import admin_api
from core.database import init_db
from core.response import APIResponse
from core.settings import data_root, settings, BASE_DIR, DEFAULT_CONFIG
from core.tasks import delete_expire_files
from core.logger import logger
from contextlib import asynccontextmanager
from tortoise import Tortoise
@@ -27,6 +28,7 @@ from tortoise import Tortoise
@asynccontextmanager
async def lifespan(app: FastAPI):
logger.info("正在初始化应用...")
# 初始化数据库
await init_db()
@@ -40,14 +42,17 @@ async def lifespan(app: FastAPI):
# 启动后台任务
task = asyncio.create_task(delete_expire_files())
logger.info("应用初始化完成")
try:
yield
finally:
# 清理操作
logger.info("正在关闭应用...")
task.cancel()
await asyncio.gather(task, return_exceptions=True)
await Tortoise.close_connections()
logger.info("应用已关闭")
async def load_config():
@@ -92,6 +97,7 @@ register_tortoise(
)
app.include_router(share_api)
app.include_router(chunk_api)
app.include_router(admin_api)
@@ -128,6 +134,7 @@ async def get_config():
"explain": settings.page_explain,
"uploadSize": settings.uploadSize,
"expireStyle": settings.expireStyle,
"enableChunk": settings.enableChunk if settings.file_storage == "local" and settings.enableChunk else 0,
"openUpload": settings.openUpload,
"notify_title": settings.notify_title,
"notify_content": settings.notify_content,