Flask
Доступ к данным запроса
Поиск…
Вступление
При работе с веб-приложением иногда важно получить доступ к данным, включенным в запрос, за пределы URL.
В Flask это хранится под объектом глобального запроса , доступ к которому вы можете получить в своем коде через from flask import request
.
Доступ к строке запроса
Строка запроса является частью запроса, следующего за URL-адресом, которому предшествует ?
отметка.
Пример: https://encrypted.google.com/search
?hl=en&q=stack%20overflow
В этом примере мы создаем простой веб-сервер echo, который возвращает все отправленные ему элементы через поле echo
в запросах GET
.
Пример: 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()
Комбинированная форма и строка запроса
Flask также позволяет получить доступ к CombinedMultiDict, который предоставляет доступ к атрибутам request.form
и request.args
под одной переменной.
В этом примере извлекаются данные из name
поля формы, представленного вместе с полем echo
в строке запроса.
Пример колбы :
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()
Доступ к полям формы
Вы можете получить данные формы, отправленные через запрос POST
или PUT
в Flask с помощью атрибута 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()