Testeur CORS — Déboguer les erreurs CORS

Bloqué par une erreur CORS ? Saisissez l’adresse de l’API et l’origine de votre site. Nous envoyons les mêmes requêtes qu’un navigateur, affichons précisément ce qui échoue et vous donnons le correctif côté serveur.

Mis à jour le

Cet outil récupère depuis notre serveur l’URL publique que vous saisissez. Les résultats restent quelques minutes en mémoire temporaire et ne sont jamais enregistrés en base de données.

Comment utiliser : Testeur CORS

  1. Saisissez l’adresse de l’API qui échoue, puis l’adresse de votre site comme origine.
  2. Choisissez la méthode et ajoutez les en-têtes personnalisés éventuels, comme Authorization.
  3. Cochez Envoyer les cookies si votre requête utilise des identifiants, puis cliquez sur Tester CORS.
  4. Lisez ce qui a échoué, puis copiez le correctif correspondant à votre serveur.

Qu’est-ce que CORS ?

Les navigateurs empêchent une page d’un site de lire les réponses d’un autre site, sauf si ce dernier serveur l’autorise. Cross-Origin Resource Sharing (partage des ressources entre origines) est le mécanisme qui permet cette autorisation, à l’aide d’en-têtes de réponse Access-Control-Allow-*. Il doit être configuré sur le serveur, et non dans votre code front-end.

Qu’est-ce qu’une requête preflight ?

Pour certaines requêtes, comme PUT, DELETE ou celles qui contiennent un en-tête Authorization, le navigateur envoie d’abord une requête OPTIONS pour demander l’autorisation. Si cette étape échoue, la requête réelle n’est jamais envoyée.

Erreurs CORS courantes

  • Absence d’en-tête Access-Control-Allow-Origin : le serveur n’a pas ajouté les en-têtes CORS. Les pages d’erreur les omettent souvent aussi, vérifiez donc que votre requête n’échoue pas pour une autre raison.
  • Joker avec identifiants : * ne peut pas être utilisé avec les cookies. Renvoyez l’origine exacte.
  • Échec du preflight : votre serveur doit répondre à OPTIONS avec un statut 2xx, avant toute vérification de connexion.
  • Valeurs multiples : deux couches, comme un proxy et une application, peuvent ajouter chacune l’en-tête.

Restez en sécurité

N’autorisez que les origines en lesquelles vous avez confiance. Ne renvoyez pas l’en-tête Origin reçu sans le vérifier dans une liste, surtout avec des identifiants, car n’importe quel site pourrait alors lire les données de vos utilisateurs.

Vous souhaitez construire les en-têtes à partir de zéro ? Utilisez le générateur d’en-têtes CORS. Pour inspecter une réponse complète, essayez le vérificateur d’en-têtes HTTP.

Aussi recherché comme : vérificateur cors, tester cors, erreur cors, bloqué par la politique cors, access-control-allow-origin vérificateur, test preflight cors, pas d’en-tête access-control-allow-origin.

Outils complémentaires : Testeur CORS

  • Testeur d'API — Une alternative légère à Postman dans votre navigateur : construisez une requête HTTP, envoyez-la, puis examinez le statut, le temps de réponse, les en-têtes et le JSON mis en forme.
  • Vérificateur d’en-têtes de sécurité — Évaluez les en-têtes HTTP de sécurité d’un site, de A+ à F, repérez ceux qui manquent et comprenez pourquoi ils comptent.
  • Codes de statut HTTP — Tous les codes de réponse HTTP standard expliqués simplement, avec le moment où les utiliser et leur effet sur le référencement.
  • Analyseur d’en-têtes e-mail — Collez les en-têtes bruts d’un e-mail pour voir tout son parcours : chaque saut entre serveurs avec le temps qu’il a pris, les résultats SPF, DKIM et DMARC, l’IP d’origine et les signaux d’alerte, comme une adresse Reply-To ou Return-Path incohérente.

Questions fréquentes

Pourquoi mon API fonctionne-t-elle dans Postman mais pas dans le navigateur ?
CORS est appliqué par les navigateurs. Postman ne l’applique pas, la même requête peut donc fonctionner là-bas et échouer sur votre site.
Puis-je corriger CORS depuis le front-end ?
Non. C’est le serveur qui doit envoyer les en-têtes. Si vous n’en avez pas le contrôle, appelez-le via votre propre backend.
Access-Control-Allow-Origin: * est-il sûr ?
C’est acceptable pour des données publiques ne nécessitant aucune connexion. Ne l’utilisez pas pour des données privées.
Ce test équivaut-il à un vrai navigateur ?
Il envoie des requêtes de même type depuis notre serveur et applique les règles du navigateur. Les résultats peuvent différer si votre serveur traite différemment les visiteurs ou certaines localisations.

Outils similaires