언어/python
python api 서버에서 파일 다운로드 구현하기 (flask / fastapi)
Soyeon0111
2022. 4. 17. 22:06
반응형
1. flask로 구현한 api 서버에서 파일 다운로드 send_file 로 구현
from flask import Flask, send_file
from waitress import serve
app = Flask(__name__)
IMAGE_ROOT_DIR = './'
@app.route('/images/<string:filename>', methods=['GET'])
def getImage(filename):
targetFile = IMAGE_ROOT_DIR + filename
print(f"File Download : {targetFile}")
return send_file(targetFile)
if __name__ == '__main__':
serve(app, host='0.0.0.0', port=9911)


2. fastapi로 구현한 api 서버에서 파일 다운로드 FileResponse로 구현
from fastapi import FastAPI
from starlette.responses import FileResponse
app = FastAPI()
IMAGE_ROOT_DIR = './'
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/images/{filename}")
def read_item(filename):
targetFile = IMAGE_ROOT_DIR + filename
print(f"File Download : {targetFile}")
return FileResponse(targetFile, media_type='image/jpg',filename=filename)


반응형