Aller au contenu
Aback Tools Logo

Testeur de contrôle en amont CORS

Testez les requêtes de contrôle en amont CORS sur n'importe quelle URL avec notre testeur de contrôle en amont CORS gratuit. Envoyez des requêtes OPTIONS avec des origines personnalisées, des méthodes HTTP et des en-têtes pour voir exactement quels en-têtes de réponse Access-Control-* le serveur renvoie. L'outil analyse 6 en-têtes CORS et fournit un verdict réussite/échec pour chaque vérification, vous aidant ainsi à diagnostiquer rapidement les problèmes de configuration CORS. Activez le mode proxy pour contourner les restrictions du navigateur et voir les en-têtes de réponse brutes du serveur. Aucune inscription requise.

CORS Preflight Tester
Send a CORS preflight (OPTIONS) request to any URL with custom headers and origin. The tool analyzes the Access-Control-* response headers and determines if a browser would allow the cross-origin request. Results show which CORS checks pass or fail with detailed explanations for each header.

Quick Test Presets

Pourquoi utiliser notre testeur de contrôle en amont CORS ?

  • Tests de requêtes CORS en amont réels : envoyez des requêtes OPTIONS réelles à n'importe quelle URL avec une origine, une méthode et des en-têtes personnalisés. Le CORS Preflight Tester utilise l'API de récupération du navigateur pour simuler de véritables requêtes de contrôle en amont, tout comme un navigateur l'enverrait avant de faire une requête d'origine croisée. Les résultats incluent les en-têtes de réponse complets du serveur, montrant exactement quelle politique CORS est en place.
  • Analyse complète des en-têtes CORS : l'outil analyse automatiquement 6 en-têtes de réponse Access-Control-* clés : Allow-Origin (vérifie la correspondance d'origine), Allow-Methods (valide la méthode HTTP), Allow-Headers (vérifie les en-têtes personnalisés), Allow-Credentials (vérifie la prise en charge des cookies/authentification), Max-Age (durée de mise en cache en amont) et Expose-Headers (en-têtes lisibles par le client). Chaque contrôle indique la réussite/l'échec avec des explications détaillées.
  • Mode proxy pour les tests d'origine croisée : activez l'option de proxy CORS pour contourner les restrictions de même origine du navigateur. Lorsqu'il est activé, l'outil achemine la requête OPTIONS via un proxy CORS public, vous permettant de voir les en-têtes de réponse CORS réels du serveur même lorsque le serveur n'autorise pas votre origine. Ceci est inestimable pour déboguer les problèmes de configuration CORS.
  • Gratuit et sans inscription requise : testez les requêtes de contrôle en amont CORS sur un nombre illimité d'URL sans inscription, sans clé API et sans limites d'utilisation. Toutes les requêtes vont directement de votre navigateur au serveur cible (ou via un proxy public gratuit). Nous ne stockons, n'enregistrons ni ne traitons aucune donnée de test sur nos serveurs. Entièrement gratuit, pour toujours.

Cas d'utilisation courants pour les tests de contrôle en amont CORS

  • Débogage de l'intégration d'API : les développeurs frontend testant les intégrations d'API utilisent le testeur CORS Preflight pour diagnostiquer les erreurs CORS. Lorsqu'une console de navigateur affiche « Politique CORS : aucun en-tête 'Access-Control-Allow-Origin' », utilisez le testeur pour envoyer une demande de contrôle en amont et voir exactement quels en-têtes CORS le serveur renvoie - et lesquels manquent.
  • Configuration de la demande de contrôle en amont : les développeurs back-end qui configurent CORS sur leurs API peuvent utiliser le testeur pour vérifier la configuration CORS de leur serveur. Testez différentes origines, méthodes HTTP et combinaisons d'en-têtes personnalisées pour vous assurer que le serveur répond avec les en-têtes Access-Control-* corrects avant le déploiement en production.
  • Vérification de la compatibilité des API tierces : avant d'intégrer une API tierce dans votre application Web, utilisez le testeur CORS Preflight pour vérifier que l'API prend en charge les requêtes d'origine croisée de votre domaine. Vérifiez si l'API autorise vos méthodes HTTP, vos en-têtes personnalisés et si les informations d'identification (cookies) peuvent être incluses dans les requêtes.
  • Audit de politique CORS de microservices : les organisations disposant de plusieurs microservices ont besoin de politiques CORS cohérentes sur tous les points de terminaison. Utilisez le testeur CORS Preflight pour auditer chaque point de terminaison de service, en vous assurant qu'ils suivent tous la même configuration CORS. L'analyse réussite/échec de l'outil facilite la détection des services mal configurés.
  • Configuration de la plate-forme SaaS : les plates-formes SaaS qui proposent des widgets intégrables, des SDK JavaScript ou des intégrations iframe s'appuient sur une configuration CORS appropriée. Utilisez CORS Preflight Tester pour vérifier les en-têtes CORS pour les domaines clients, les sous-domaines personnalisés et plusieurs environnements de déploiement.
  • Dépannage des erreurs CORS : lorsque les utilisateurs signalent des erreurs liées à CORS en production, le testeur de contrôle en amont CORS permet de déterminer rapidement si le problème est un problème de configuration du serveur, une restriction du navigateur ou une incompatibilité d'en-tête côté client. L'analyse détaillée de l'en-tête identifie exactement quelle vérification CORS échoue.

Qu'est-ce qu'une demande de contrôle en amont CORS ?

Une requête de contrôle en amont CORS est une requête HTTP OPTIONS qu'un navigateur envoie automatiquement avant d'effectuer certaines requêtes d'origine croisée. Il demande au serveur l'autorisation d'envoyer la requête réelle en vérifiant quelles origines, méthodes et en-têtes sont autorisés. Le contrôle en amont est déclenché lorsqu'une requête utilise une méthode non simple (autre que GET, HEAD ou POST avec des types de contenu standard), inclut des en-têtes personnalisés ou utilise des informations d'identification (cookies ou en-têtes d'autorisation).

Comment fonctionne le processus de contrôle en amont CORS

  1. Le navigateur vérifie si un contrôle en amont est nécessaire : si la demande n'est « non simple » (méthode HTTP différente, en-têtes personnalisés ou informations d'identification), le navigateur envoie une demande de contrôle en amont avant la demande réelle.
  2. La requête OPTIONS est envoyée : le navigateur envoie une requête HTTP OPTIONS à l'URL cible avec trois en-têtes spéciaux : Origin (l'origine de la demande), Access-Control-Request-Method (la méthode HTTP prévue) et Access-Control-Request-Headers (tout en-tête personnalisé prévu).
  3. Le serveur répond avec la politique CORS : le serveur doit répondre avec les en-têtes Access-Control-* pertinents indiquant sa politique CORS. Le navigateur vérifie ces en-têtes par rapport aux propriétés réelles de la requête.
  4. Le navigateur décide : si la réponse du serveur autorise la requête (correspondance à l'origine, à la méthode et aux en-têtes), le navigateur poursuit la requête proprement dite. Sinon, le navigateur bloque la requête et renvoie une erreur CORS dans la console.

Comprendre les en-têtes CORS

  • Access-Control-Allow-Origin : Spécifie quelles origines sont autorisées. Il peut s'agir d'une origine spécifique (par exemple, https://my-app.com) ou * (n'importe quelle origine, mais sans informations d'identification).
  • Access-Control-Allow-Methods : répertorie les méthodes HTTP autorisées pour les requêtes d'origine croisée (par exemple, GET, POST, PUT, DELETE ).
  • Access-Control-Allow-Headers : répertorie les en-têtes personnalisés qui peuvent être inclus dans les requêtes d'origine croisée (par exemple, Content-Type, Authorization ).
  • Access-Control-Allow-Credentials : lorsqu'il est défini sur true , permet aux cookies, aux en-têtes d'autorisation et aux certificats clients TLS d'être inclus dans les requêtes d'origine croisée.
  • Access-Control-Max-Age : indique la durée pendant laquelle (en secondes) la réponse de contrôle en amont peut être mise en cache par le navigateur, réduisant ainsi le nombre de requêtes de contrôle en amont.
  • Access-Control-Expose-Headers : contrôle à quels en-têtes de réponse le code JavaScript du client est autorisé à accéder.

Considérations importantes pour les tests CORS

Les tests CORS basés sur un navigateur ont des limites inhérentes : lorsqu'un serveur n'autorise pas votre origine, le navigateur bloque la réponse et JavaScript ne peut pas lire les en-têtes CORS. Notre outil résout ce problème en proposant un mode proxy qui achemine la requête via un proxy CORS public, vous permettant de voir les en-têtes de réponse réels du serveur, quelle que soit la politique CORS du serveur. Cependant, le mode proxy introduit son propre comportement : le proxy ajoute ses propres en-têtes CORS. Pour obtenir les résultats les plus précis, testez avec et sans le proxy. Pour le débogage de production, vérifiez toujours la configuration CORS à l'aide d'outils côté serveur tels que curl.

Foire aux questions

Une requête de contrôle en amont CORS est une requête HTTP OPTIONS que les navigateurs envoient automatiquement avant d'effectuer des requêtes d'origine croisée « non simples ». Il demande l'autorisation au serveur cible en vérifiant quelles origines, méthodes HTTP et en-têtes personnalisés sont autorisés. Les requêtes de contrôle en amont sont déclenchées lorsque la requête utilise une méthode non simple (PUT, DELETE, PATCH, etc.), inclut des en-têtes personnalisés (comme Authorization ou Content-Type : application/json) ou utilise des informations d'identification (cookies).

Entrez une URL cible, sélectionnez une méthode HTTP, spécifiez éventuellement une origine et des en-têtes personnalisés, puis cliquez sur « Envoyer une demande de contrôle en amont ». L'outil envoie une requête OPTIONS au serveur cible et analyse les en-têtes de réponse Access-Control-*. Il vérifie 6 en-têtes CORS et affiche la réussite/l'échec pour chacun avec des explications détaillées. Activez le mode proxy pour contourner les restrictions du navigateur lors du test des serveurs qui bloquent votre origine.

Le testeur de contrôle en amont CORS vérifie 6 en-têtes de réponse Access-Control-* clés : Allow-Origin (correspondance d'origine), Allow-Methods (validation de la méthode HTTP), Allow-Headers (autorisations d'en-tête personnalisées), Allow-Credentials (prise en charge des cookies/authentification), Max-Age (durée de mise en cache du contrôle en amont) et Expose-Headers (en-têtes accessibles au client). Chaque contrôle est affiché avec un indicateur de réussite/échec et une description détaillée du résultat.

Une erreur CORS se produit lorsque le serveur cible n'autorise pas les requêtes d'origine croisée provenant de votre origine. La politique de sécurité du navigateur bloque la réponse et renvoie une TypeError. Pour voir les en-têtes de réponse réels du serveur, activez la bascule « Utiliser le proxy CORS » : cela achemine la demande via un proxy public qui contourne les restrictions du navigateur, vous permettant de voir exactement quels en-têtes CORS le serveur renvoie.

Les requêtes simples utilisent des méthodes standard (GET, HEAD, POST avec Content-Type : form-urlencoded, multipart/form-data ou text/plain) et aucun en-tête personnalisé - elles contournent le contrôle en amont et vont directement au serveur. Les requêtes non simples (PUT, DELETE, PATCH, en-têtes personnalisés comme Authorization ou Content-Type: application/json) déclenchent d'abord une requête OPTIONS de contrôle en amont. Notre outil vous permet de tester les deux scénarios.

Utilisez le mode proxy lorsque le serveur cible n'autorise pas votre origine et que vous souhaitez voir les en-têtes de réponse CORS réels du serveur. Sans mode proxy, les requêtes OPTIONS directes fonctionnent pour les cibles et les serveurs de même origine avec CORS permissif. Pour obtenir les résultats de test les plus précis, essayez les deux modes : direct d'abord (pour simuler une véritable expérience de navigateur), puis le mode proxy (pour voir la réponse complète du serveur).

Oui. Incluez les cookies ou l'authentification en ajoutant un en-tête Autorisation dans la section En-têtes personnalisés. La vérification Access-Control-Allow-Credentials de l'outil vous indiquera si le serveur autorise les informations d'identification dans les requêtes d'origine croisée. Notez que lorsque les informations d'identification sont incluses, les serveurs ne peuvent pas utiliser le caractère générique (*) pour Access-Control-Allow-Origin - ils doivent spécifier une origine exacte.

Oui! Le CORS Preflight Tester est 100 % gratuit, sans inscription, sans clé API et sans limite d'utilisation. Testez autant d’URL que nécessaire, aussi souvent que nécessaire. Toutes les requêtes vont directement de votre navigateur au serveur cible (ou via un proxy public gratuit). Nous ne stockons, n'enregistrons ni ne traitons aucune donnée de test sur nos serveurs.