from fastapi import FastAPI, UploadFile, File
from typing import List
import uvicorn
import os
app = FastAPI()
# 定义上传文件保存的目录
UPLOAD_DIR = "uploads" # 你可以修改为任何你想要的目录名
# 确保上传目录存在
os.makedirs(UPLOAD_DIR, exist_ok=True)
# 文件上传
@app.post("/uploadfile/")
async def create_upload_file(file: UploadFile = File(...)):
try:
print(f"文件名: {file.filename}")
# 构建文件保存路径
file_path = os.path.join(UPLOAD_DIR, file.filename)
# 保存文件到指定目录
with open(file_path, "wb") as buffer:
buffer.write(await file.read())
print(f"文件保存成功: {file_path}")
return {
"filename": file.filename,
"saved_path": file_path,
"message": "文件上传成功"
}
except Exception as e:
return {
"error": str(e),
"message": "文件上传失败"
}
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=8000)