반응형
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)
반응형
'언어 > python' 카테고리의 다른 글
python json 실습 - json.load(), json.loads(), json.dump(), json.dumps() 차이 (0) | 2022.04.05 |
---|---|
python3 rsa public key 사용하여 encrypt 하기 (0) | 2021.07.18 |