diff --git a/app/api/upload.py b/app/api/upload.py index 1baba46..5dbb7b2 100644 --- a/app/api/upload.py +++ b/app/api/upload.py @@ -10,18 +10,26 @@ ALLOWED_SUFFIXES = {".txt", ".md", ".pdf", ".docx"} def upload_user_file(user_id: str = Form(...), file: UploadFile = File(...)): filename = os.path.basename(file.filename) suffix = os.path.splitext(filename)[-1].lower() + if suffix not in ALLOWED_SUFFIXES: raise HTTPException(status_code=400, detail="不支持的文件类型") + # 创建用户文档目录 user_doc_dir = os.path.join("docs", user_id) os.makedirs(user_doc_dir, exist_ok=True) + # 创建索引存储路径,确保目录存在 + index_data_dir = os.path.join("index_data", user_id) + os.makedirs(index_data_dir, exist_ok=True) + + # 保存文件 file_path = os.path.join(user_doc_dir, filename) try: with open(file_path, "wb") as f: shutil.copyfileobj(file.file, f) print(f"[UPLOAD] 文件已保存至 {file_path}") + # 创建索引 build_user_index(user_id) print(f"[UPLOAD] 用户 {user_id} 的索引已重建")