Flaskで構築したWebアプリに、Webページなどに表示させているデータをjson形式でダウンロードさせるための機能の追加についてのメモ。超簡単。
サンプルコード:
from flask import Flask, Response, json
app = Flask(__name__)
@app.route('/json/')
def download_json(filename):
# JSONデータを作成
data = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
}
# JSONデータを文字列に変換
json_str = json.dumps(data)
# レスポンスを作成してContent-Dispositionヘッダーを設定し、ダウンロードさせる
response = Response(json_str, content_type='application/json')
response.headers['Content-Disposition'] = f'attachment; filename={filename}.json'
return response
if __name__ == '__main__':
app.run()
解説:
このコードでは、/json/