Comment faire communiquer Python et JavaScript en utilisant JSON
Voulez-vous savoir comment envoyer des données de JavaScript vers Python ? Eh bien, c’est facile avec une interface de programmation d’application (API).
Les langages de programmation utilisent des API pour communiquer et échanger des données. Typiquement, dans ce type de communication, la technologie backend (fournisseur d’API), après avoir reçu la requête du script frontend, répond avec des données. Cependant, il existe de nombreux types de requêtes ; dans cet article, vous apprendrez à utiliser une requête POST pour envoyer des données au format JSON de JavaScript à un serveur via l’API Python.
Installation du serveur Python et Flask
Si vous êtes sous Windows et que Python n’est pas installé, téléchargez-le depuis le site Web python.org. Les utilisateurs de Mac n’ont pas besoin de télécharger Python, car le système d’exploitation l’accompagne par défaut. Vous pouvez également bien suivre Linux.
Paramétrage et installation du serveur
Vous avez besoin d’un serveur pour créer une API REST Python. Il existe de nombreux frameworks Web Python pour cela. Flask, Django, FastAPI, Tornado et de nombreux autres outils sont utiles lors de l’écriture d’API REST en Python.
Néanmoins, vous utiliserez Flask pour ce didacticiel car il est facile à comprendre et compatible avec l’API.
Tout d’abord, créez un environnement virtuel Python. Ouvrez votre terminal dans le dossier racine de votre projet.Ensuite, installez ballon et ballon-cors Utilisez pip :
pip install Flacon, flacon-cors
Ce ballon-cors Le package est le module CORS intégré de Flask pour contourner les politiques de ressources d’origine croisée lors de la demande à partir des points de terminaison de l’API. Au fur et à mesure que vous continuez, vous verrez comment vous installer avec Flask.
Faire une vidéo du jour
C’est tout pour la section d’installation.
Structure du squelette du flacon
Ensuite, créez un nouveau fichier dans le dossier racine du projet.assurez-vous qu’il a .py extension de fichier.Par exemple, il peut être application.py.
Ouvrez le fichier dans votre éditeur de code préféré et configurez votre application Flask comme suit :
importer un flacon à partir d’un flacon, requêtes, jsonify
Importer CORS depuis flask_cors
# mettre en place le ballon:
app = flacon (__nom__)
#Set Flask pour contourner CORS sur le frontend :
cors = CORS(application)
# lancer l’application:
Si __nom__ == « __main__ »:
exécution de l’application()
Le code ci-dessus importe les modules requis et configure votre application. code supplémentaire à la fin (exécution de l’application()) pour que l’application s’exécute sur le port par défaut, généralement le port 5000.
Créer un point de terminaison API POST
Dans ce didacticiel, vous utiliserez un point de terminaison Flask pour envoyer des données JSON contenant différentes marques de voitures et leurs modèles à partir de JavaScript vers un serveur.Dans votre JavaScript, vous affectez les données à un autoCependant, vous pouvez lui donner le nom de votre choix.
Mais d’abord, ouvrez application.py fichier, configurez un point de terminaison API POST, puis appelez-le destinataireN’oubliez pas que vous pouvez utiliser n’importe quelle convention de nommage.
Voici à quoi ressemble votre fichier Python :
importer un flacon à partir d’un flacon, requêtes, jsonify
Importer CORS depuis flask_cors
# mettre en place le ballon:
app = flacon (__nom__)
#Set Flask pour contourner CORS:
cors = CORS(application)
#Créer le point de terminaison POST de l’API du récepteur:
@app.route(« /receiver », methodes=[« POST »])
def postME() :
données = request.get_json()
données = jsonify(données)
renvoyer des données
Si __nom__ == « __main__ »:
application en cours d’exécution (debug=true)
Publier des données de JavaScript vers l’API Python Flask
Maintenant que le point de terminaison de l’API POST est prêt, créez un fichier JavaScript et HTML dans le dossier racine de votre projet (où réside votre application flask). donnez-leur le nom que vous voulez (données.js et index.html Dans ces circonstances).
Mais d’abord, voici comment index.html On dirait:
<头部>
<标题>
Envoi Python
<正文>
正文>