FastAPI系列:上传文件File和UploadFile

上传文件

# file仅适用于小文件
@app.post("/files/")
async def create_file(file: bytes | None = File(default=None)):
    if not file:
        return {"message": "No file sent"}
    else:
        return {"file_size": len(file)}


# UploadFile仅适用于异步函数
@app.post("/uploadfile/")
async def create_upload_file(file: UploadFile = File(...)): # 上传的文件名key必须叫file
    if not file:
        return {"message": "No upload file sent"}
    else:
        return {"filename": file.filename}
    
# UploadFile相关异步方法 
write(data) 把data(str或bytes)写入文件
read(size) 按指定数量的字节或字符(size(int))读取文件内容
seek(offset) 移动至文件Offset(int) 字节处的位置
close() 关闭文件
posted @ 2024-02-28 17:43  我在路上回头看  阅读(313)  评论(0编辑  收藏  举报