반응형 파일업로드2 [FastAPI] 이미지 파일 업로드 하기 백엔드 서버에 이미지 파일을 저장해야 하는 일이 있다. 가령 게시판에 사진을 올린다던지. 헌데 이미지파일을 DB에 저장하면 DB 쿼리 성능을 저하시킨다. 이때문에 서버에 이미지를 저장할 때에는 서버의 파일 시스템에 이미지를 저장 DB에는 이 파일의 URL만 저장해야한다 아래는 FastAPI에 파일을 저장하는 예제이다. 파일 파라미터에는 UploadFile을 사용한다 그리고 파일명이 중복되지 않도록 파일명을 저장되는 시간 + 임의의 램덤해시값으로 저장한다. from fastapi import UploadFile, File BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) STATIC_DIR = os.path.join(BASE_DI.. 2021. 12. 13. Fast API 배우기 15부 - Request Files File 클래스를 이용하면 클라이언트가 업로드하는 file을 다룰 수 있다. 사용법은 다음과 같다. File클래스를 import하고 UploadFile로 type 지정해준다. from fastapi import FastAPI, File, UploadFile app = FastAPI() @app.post("/files/") async def create_file(file: bytes = File(...)): return {"file_size": len(file)} @app.post("/uploadfile/") async def create_upload_file(file: UploadFile = File(...)): return {"filename": file.filename} async def create.. 2021. 11. 2. 이전 1 다음 반응형