フラスコのヘッダーに複数のオプションを設定するにはどうすればよいですか。例: Cache-Controlヘッダーに 2 つのオプションを設定したいのですが、 1 つはmax-ageで、もう 1 つはpublic/privateです。Flaskでどのように行うのですか?. 現在、私はこれを実装しています。
from flask import Flask, jsonify, abort, request, json, Response
app = Flask(__name__)
book_list = ['Peaceful Warrior', 'The Monk who sold his ferrari', 'Lord of the Rings', 'Game of Thrones', 'The True Name', 'The Da Vinci Code',
'Angels and Demons', 'Fear of Flying', 'Harry Potter and Half Blood Prince']
# create a in-memory book-store
books = [{'id': id, 'name': book} for id, book in enumerate(book_list, 1)]
@app.route('/books', methods=['GET'])
def get_books():
if 'name' in request.args:
req_books = [book for book in books if book['name'] == request.args['name']]
js = json.dumps(req_books)
resp = Response(js, status=200, mimetype='application/json')
resp.headers['Cache-Control'] = 'public'
resp.headers['Cache-Control'] = 'max-age=20'
elif 'id' in request.args:
req_books = [book for book in books if book['id'] == request.args['id']]
js = json.dumps(req_books)
resp = Response(js, status=200, mimetype='application/json')
resp.headers['Cache-Control'] = 'public'
else:
js = json.dumps(books)
resp = Response(js, status=200, mimetype='application/json')
resp.headers['Cache-Control'] = 'public'
return resp
最後に、私の応答には次の形式のヘッダーが必要です:-
Cache-Control: public
Cache-Control: max-age=20