====== Request ======
Doc: [[https://flask.palletsprojects.com/en/2.0.x/api/#incoming-request-data]]
* [[https://stackoverflow.com/questions/20001229/how-to-get-posted-json-in-flask|How to get POSTed JSON in Flask?]]
===== Méthode =====
Pour différencier entre GET et POST :
from flask import request
@app.route('/login', methods=['POST', 'GET'])
def login():
if request.method == 'POST':
user = request.form['nm']
return redirect(url_for('success',name = user))
else:
user = request.args.get('nm')
return redirect(url_for('success',name = user))
===== Lecture des valeurs =====
==== args ====
Valeurs passées sur l'URL après le point d'interrogation.
id = request.args.get('id', 0)
page_index = request.args.get('index', 1, type=int)
user_name = request.args.get('name', '', type=str)
userID = request.args.get('user_id', type=int) # Si absent, renvoie None
==== form ====
Récupérer les valeurs d'un formulaire par leur nom :
nom = request.form.get('nom')
# Avec une valeur par défaut
prenom = request.form.get('prenom', 'Barnabé')
# Avec une valeur par défaut et en forçant le type
id = request.form.get('id', 0, type=int)
Lister toutes les valeurs d'une requête POST :
if request.method == 'POST':
for name, value in request.form.items():
print(name, value)
==== json ====
Pour une requête POST envoyée en dehors d'un formulaire, les valeurs
se trouvent dans ''request.json''.
nom = request.json.get('nom')
==== files ====
Fichier(s) uploadé(s) via un formulaire.
=> Voir la page [[python:flask:upload|]]