サーチ…


前書き

Webアプリケーションを操作する場合、リクエストに含まれるデータにURLを超えてアクセスすることが重要な場合があります。

Flaskでは、グローバルリクエストオブジェクトの下に格納されています。 from flask import requestコードにアクセスできます。

クエリ文字列へのアクセス

クエリ文字列は、URLに続く要求の一部で、先頭に?マーク。

例: https://encrypted.google.com/search : ?hl=en&q=stack%20overflow

この例では、 GETリクエストのechoフィールドを介して送信されたすべてのものをエコーバックする単純なエコーWebサーバーを作成しています。

例: localhost:5000/echo ?echo=echo+this+back+to+me

フラスコの例

from flask import Flask, request

app = Flask(import_name=__name__)

@app.route("/echo")
def echo():

    to_echo = request.args.get("echo", "")
    response = "{}".format(to_echo)

    return response

if __name__ == "__main__":
    app.run()

結合されたフォームとクエリ文字列

フラスコはまた、両方にアクセスできますCombinedMultiDictにアクセスできますrequest.formrequest.args一つの変数の下の属性を。

この例では、クエリ文字列のechoフィールドと共に送信されたフォームフィールドnameからデータを取得します。

フラスコの例

from flask import Flask, request

app = Flask(import_name=__name__)


@app.route("/echo", methods=["POST"])
def echo():

    name = request.values.get("name", "")
    to_echo = request.values.get("echo", "")

    response = "Hey there {}! You said {}".format(name, to_echo)

    return response

app.run()

フォームフィールドへのアクセス

FlaskのPOSTまたはPUTリクエストを介してrequest.form属性を介して送信されたフォームデータにアクセスできます。

from flask import Flask, request

app = Flask(import_name=__name__)


@app.route("/echo", methods=["POST"])
def echo():

    name = request.form.get("name", "")
    age = request.form.get("age", "")

    response = "Hey there {}! You said you are {} years old.".format(name, age)

    return response

app.run()


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow