Flask
Accès aux données de demande
Recherche…
Introduction
Lorsque vous travaillez avec une application Web, il est parfois important d'accéder aux données incluses dans la demande, au-delà de l'URL.
Dans Flask, ceci est stocké sous l'objet global request , auquel vous pouvez accéder dans votre code via la from flask import request .
Accéder à la chaîne de requête
La chaîne de requête est la partie d'une requête suivant l'URL, précédée d'un ? marque.
Exemple: https://encrypted.google.com/search ?hl=en&q=stack%20overflow
Pour cet exemple, nous créons un simple serveur Web d'écho qui renvoie tout ce qui lui est soumis via le champ echo dans GET requêtes GET .
Exemple: localhost:5000/echo ?echo=echo+this+back+to+me
Exemple de flacon :
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()
Forme combinée et chaîne de requête
Flask permet également d'accéder à un CombinedMultiDict qui donne accès aux attributs request.form et request.args sous une seule variable.
Cet exemple extrait des données d'un name champ de formulaire soumis avec le champ echo dans la chaîne de requête.
Exemple de flacon :
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()
Accéder aux champs de formulaire
Vous pouvez accéder aux données de formulaire soumises via une POST ou PUT dans Flask via l'attribut 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()