Maison > développement back-end > Tutoriel Python > Comment implémenter le partage de ressources cross-origine (CORS) dans Flask : un guide étape par étape

Comment implémenter le partage de ressources cross-origine (CORS) dans Flask : un guide étape par étape

Mary-Kate Olsen
Libérer: 2024-10-28 09:43:01
original
1060 Les gens l'ont consulté

How to Implement Cross-Origin Resource Sharing (CORS) in Flask: A Step-by-Step Guide

CORS dans Flask : un guide étape par étape pour activer les requêtes d'origine croisée

Le partage de ressources d'origine croisée (CORS) est un mécanisme essentiel pour autoriser les requêtes inter-domaines dans les applications Web. Flask, un framework Web populaire basé sur Python, fournit une prise en charge intégrée de CORS, ce qui facilite l'activation de l'accès multi-origine.

Activation de CORS dans Flask

Si vous rencontrez l'erreur « XMLHttpRequest ne peut pas se charger » en raison d'en-têtes CORS manquants, suivez ces étapes :

  1. Installez flask-cors :

    <code class="shell">pip install Flask-CORS</code>
    Copier après la connexion
  2. Importer CORS dans Flask :

    <code class="python">from flask_cors import CORS</code>
    Copier après la connexion
  3. Initialiser l'objet CORS :

    <code class="python">cors = CORS(app)</code>
    Copier après la connexion
  4. Configurer les en-têtes CORS :
    Mettez à jour la configuration CORS pour spécifier les en-têtes qui seront autorisés pour les requêtes d'origine croisée. Par défaut, Flask-CORS autorise uniquement l'en-tête "Content-Type". Vous pouvez l'étendre pour inclure des en-têtes supplémentaires si nécessaire, tels que « Autorisation ».

    <code class="python">app.config['CORS_HEADERS'] = 'Content-Type, Authorization'</code>
    Copier après la connexion
  5. Appliquer CORS à une route spécifique :
    Enveloppez votre route avec le décorateur @cross_origin() pour activer CORS pour cet itinéraire spécifique.

    <code class="python">@app.route("/")
    @cross_origin()
    def my_route():
        ...</code>
    Copier après la connexion

Vous pouvez également appliquer le décorateur globalement à toutes les routes :

<code class="python">@app.after_request
def after_request(response):
    response.headers.add('Access-Control-Allow-Origin', '*')
    response.headers.add('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS')
    return response</code>
Copier après la connexion

Une fois ces étapes en place, Flask ajoutera automatiquement les en-têtes CORS nécessaires à vos réponses, permettant ainsi les requêtes d'origine croisée provenant d'autres domaines.

Notes supplémentaires

  • Si vous utilisez Heroku pour déployer votre application Flask, vous devrez peut-être configurer manuellement CORS dans votre fichier Procfile.
  • N'oubliez pas de définir l'en-tête Access-Control-Allow-Origin sur le(s) domaine(s) approprié(s) d'où proviendront les requêtes.
  • Pour des informations et des options plus détaillées, reportez-vous à la documentation Flask-CORS : http://flask-cors.readthedocs.org/en/latest/

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal