|
@@ -4,6 +4,7 @@
|
|
|
@file:files.py.py
|
|
|
@time:2023/5/30 6:08
|
|
|
"""
|
|
|
+import json
|
|
|
import os
|
|
|
import random
|
|
|
import time
|
|
@@ -14,24 +15,25 @@ from fastapi.responses import FileResponse, StreamingResponse
|
|
|
from typing import Annotated, List
|
|
|
from minio import Minio
|
|
|
from io import BytesIO
|
|
|
+from config import config
|
|
|
|
|
|
-minio_client = Minio(
|
|
|
+"""
|
|
|
+ minio_client = Minio(
|
|
|
"127.0.0.1:9000",
|
|
|
access_key="minioadmin",
|
|
|
secret_key="minioadmin",
|
|
|
secure=False
|
|
|
)
|
|
|
+"""
|
|
|
|
|
|
-router = APIRouter()
|
|
|
-
|
|
|
+
|
|
|
+minio_class = config.MinioOperate()
|
|
|
+
|
|
|
+minio_client = minio_class.link_minio()
|
|
|
+
|
|
|
+minio_class.create_bucket()
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+router = APIRouter()
|
|
|
|
|
|
|
|
|
|
|
@@ -40,10 +42,12 @@ async def create_file(file: UploadFile = File(...)):
|
|
|
timestamp = str(time.time())
|
|
|
uid = re.sub(r"\.", "", timestamp)
|
|
|
front, ext = os.path.splitext(file.filename)
|
|
|
+
|
|
|
file_name = uid + ext
|
|
|
data = await file.read()
|
|
|
file_stream = BytesIO(initial_bytes=data)
|
|
|
size = len(data)
|
|
|
+
|
|
|
uri = os.path.join("/file/", file_name)
|
|
|
if (minio_client.put_object(
|
|
|
"file1",
|
|
@@ -56,21 +60,6 @@ async def create_file(file: UploadFile = File(...)):
|
|
|
return {"msg": "上传失败", "status": 400}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
@@ -88,17 +77,13 @@ async def download_file(uid: str):
|
|
|
return {"error": str(e)}
|
|
|
return response
|
|
|
|
|
|
+
|
|
|
|
|
|
@router.delete("/file/{uid}")
|
|
|
async def delete_file(uid: str):
|
|
|
try:
|
|
|
minio_client.get_object("file1", uid)
|
|
|
minio_client.remove_object("file1", uid)
|
|
|
- return {"msg": "删除图片成功!", "status": 204}
|
|
|
+ return {"msg": "删除图片成功!", "status": 200}
|
|
|
except:
|
|
|
return {"msg": "Not Found", "status": 404}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|