[PYTHON] Communication GET / POST par Flask (également à propos du support CORS)

Aperçu

Le contenu de la communication POST dans Flask étant ambigu, les deux communications GET / POST sont résumées ici. Comme contenu, il y a "communication par formulaire" / "communication par format Json". Si vous recherchez "Flask POST", les informations seront faussées. Au fait, c'est Python 3.7.

OBTENIR la communication

from flask import Flask, request, jsonfy
app = Flask(__name__)

@app.route("/", methods=["POST"])
def test():
    data = request.args.get('hoge', '') # ?hoge=Obtenez la valeur de la valeur
    return data #Retourner tel quel pour un échantillon

Communication POST

Communication au format Json

from flask import Flask, request, jsonfy
import json
app = Flask(__name__)

@app.route("/", methods=["POST"])
def test():
    data = json.loads(request.data.decode('utf-8')) # request.données utf-Décodez en 8 et faites-le type de dictionnaire dans la bibliothèque json
    return jsonfy(data) #Retourner tel quel pour un échantillon

Il semble que vous puissiez faire ce qui suit, mais je ne l'ai pas encore essayé.

from flask import Flask, request, jsonfy
import json
app = Flask(__name__)

@app.route("/", methods=["POST"])
def test():
    data = json.loads(request.get_data())
    return jsonfy(data) #Retourner tel quel pour un échantillon

Communication par formulaire

from flask import Flask, request, jsonfy
app = Flask(__name__)

@app.route("/", methods=["POST"])
def test():
    data = request.form["hoge"] #"" Cela existe sous la forme"hoge"Obtenez la valeur de la clé
    return jsonfy(data) #Retourner tel quel pour un échantillon

À propos de la prise en charge de CORS (Cross-Origin Resource Sharing)

Le contenu de cette fois n'est pas particulièrement pertinent, mais j'expliquerai ensuite le support CORS. Je suis ingénieur web, donc je ne connais pas les détails, mais en un mot, cela semble être une règle pour utiliser une autre ressource serveur (pour l'expliquer un peu plus, la base de l'URL est-elle la même? Ressens-tu la même chose?).

Pour le moment, installez "flask-cors" avec pip.

pip install flask-cors

Le reste est le suivant.

from flask import Flask
from flask_cors import CORS #Avec ça
app = Flask(__name__)
CORS(app) #cette

référence

--Flask Quick Start: https://a2c.bitbucket.io/flask/quickstart.html --1 Que faire si vous appelez l'API Flask depuis Angular et que vous vous fâchez contre No'Access-Control-Allow-Origin ...: [https://qiita.com/mitch0807/items/cd18e8fc15bb12416f3d](https: // qiita.com/mitch0807/items/cd18e8fc15bb12416f3d)

Recommended Posts

Communication GET / POST par Flask (également à propos du support CORS)
* Android * [Communication HTTP_2] Communication HTTP avec Flask (appuyez sur API Web [GET, POST])
Obtenir, publier un mémo de communication en Python
Obtenez le paramètre et le corps de l'article, activez CORS dans Flask (Python) et Express (Node.js)
(Pour moi) Flask_3 (formulaire, POST et GET)