見出し画像

Flask Web Development 15~19

前回はRequestの色々(Current_appなど)をご紹介しましたが、今回はResponseをご紹介します。

Responseは
1. HTTPのステータスコード:Flaskは200しかデフォルトで用意していないので、404のページは自分で作ります。

2. make_response:HTTPのステータスコードの返しより、カスタマイズした表示を設定できます。
3. redirect:どこかのURLにリダイレクトでページを飛ばします。
4. abort:リクエストを早い段階でエラーコードと一緒に異常終了させる際に使います。


1.の例

@app.route('/')
def index():
    return '<h1>Bad Request</h1>', 400

2.の例

from flask import make_response

@app.route('/')
def index():
    response = make_response('<h1>This document carries a cookie!</h1>')
    response.set_cookie('answer', '42')
    return response

3.の例

from flask import redirect

@app.route('/')
def index():
    return redirect('https://cloud.google.com/functions/docs/first-python?hl=ja')

4.の例

from flask import abort

@app.route('/user/<id>')
def get_user(id):
    user = load_user(id)
    if not user:
        abort(404)
    return '<h1>Hello, %s</h1>' % user.name

全て

from flask import Flaskapp = Flask(__name__)
if __name__=='__main__':
    app.run(debug=True)

の間に書いて、http://127.0.0.1:5000/で表示させて確認してね。

この記事が気に入ったらサポートをしてみませんか?