SEC7118: XMLHttpRequest CORS – Message de console IE

J'utilise la requête CORS POST avec tout ce qui a été pris en charge, à l' adresse http://www.html5rocks.com/fr/tutorials/cors/

Le serveur définit l'en-tête de réponse sur: 'Access-Control-Allow-Origin': '*' et je peux voir cette valeur d'en-tête dans l'outil de développement IE.

  • Fonction de succès Ajax
  • Charger plus de messages Ajax Button in WordPress
  • Meilleure méthode d'Instanciation d'un objet XMLHttpRequest
  • Meilleure solution pour attendre que tous les rappels ajax soient exécutés
  • Exécuter le script javascript après avoir chargé ajax une page - ne fonctionne pas
  • $ .ajaxPrefilter () Vs $ .ajaxSetup () - jQuery Ajax
  • Mais sur le navigateur IE10, je vois le message de la console comme "SEC7118: XMLHttpRequest pour http: // requis Cross Origin Resource Sharing (CORS).

    Lorsque je vérifie le site de Microsoft, il a donné des explications ci-dessous.

    Http://msdn.microsoft.com/en-us/ie/dn423949(v=vs.94).aspx

    SEC7118

    Description: "XMLHttpRequest pour [URL] requiert Cross Resource Resource Resource (CORS)." Un XMLHttpRequest a été créé sur un domaine différent du domaine de votre page. Cela oblige le serveur à renvoyer un en-tête "Access-Control-Allow-Origin" dans ses en-têtes de réponse, mais l'un n'a pas été renvoyé.

    Correction suggérée: le serveur doit prendre en charge les requêtes CORS et renvoyer un en-tête "Access-Control-Allow-Origin" approprié avec la ressource. Voir CORS pour XHR dans IE10 pour plus d'informations sur CORS dans les en-têtes de réponses.

    Des questions:

    1. Je veux savoir si ce message de console est une ERREUR?
    2. Cela causera-t-il des pannes?
    3. Pourquoi puis-je obtenir ce message même après avoir défini l'entrée de la réponse 'Access-Control-Allow-Origin' à '*' ??
    4. La valeur 'Access-Control-Allow-Origin' doit-elle être le nom d'origine pour que IE10 fonctionne? Je sais que * n'est pas une très bonne option, mais IE requiert-il un nom d'origine exact?

    Entrez la description de l'image ici

    Entrez la description de l'image ici

    J'ai gardé les informations sur les URL et les cookies cachées à partir de ces images.

  • Quel est le moyen le plus propre à obtenir la progression de la requête JQuery ajax?
  • Convertir le tableau JSON en table HTML dans jQuery
  • Comment puis-je supprimer ou remplacer le contenu SVG?
  • Démarrer le téléchargement de fichier avec JavaScript
  • Comment commencer à apprendre Ajax?
  • Quand la sensibilité à la casse est-elle importante dans les demandes JSON aux services Web ASP.NET (ASMX)?
  • 4 Solutions collect form web for “SEC7118: XMLHttpRequest CORS – Message de console IE”

    Juste pour les coups de pied, de MSDN :

    Les codes d'erreur de sécurité sont sous la forme SEC7xxx [In IE]

    Concernant SEC7118:

    Un XMLHttpRequest a été créé sur un domaine différent du domaine de votre page. Cela oblige le serveur à renvoyer un en-tête "Access-Control-Allow-Origin" dans ses en-têtes de réponse, mais l'un n'a pas été renvoyé.

    Remarque Ce code d'erreur a été supprimé dans IE11 sur Windows 10. Il reste dans IE11 pour Windows 8.1 et Windows 7.

    Il est donc techniquement considéré comme une erreur du point de vue d'IE, mais certainement n'est pas un (donc pourquoi il s'en va). Access-Control-Allow-Origin est défini sur une ressource, mais n'est pas nécessairement renvoyé avec la demande. Si une ressource spécifiée NE possède PAS Access-Control-Allow-Origin:* (ou un domaine), la ressource ne serait pas accessible et le serveur renverrait probablement un 503 ou 404 et vous verriez un véritable message d'erreur dans la console Semblable au ci-dessous:

    XMLHttpRequest ne peut pas charger http://example.com/ . Aucun en-tête 'Access-Control-Allow-Origin' n'est présent sur la ressource demandée. Origine ' http://blog.example.com ' n'est donc pas autorisé à accéder.

    J'ai vu cette erreur dans IE11:

    SEC7118: XMLHttpRequest pour http: // requis Cross Origin Resource Sharing (CORS)

    L'ajout de ce qui suit à mon .htaccess corrigé:

     <IfModule mod_setenvif.c> <IfModule mod_headers.c> <FilesMatch "\.(cur|gif|ico|jpe?g|png|svgz?|webp)$"> SetEnvIf Origin ":" IS_CORS Header set Access-Control-Allow-Origin "*" env=IS_CORS </FilesMatch> </IfModule> </IfModule> 

    Référence: https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image

    J'avais ce même problème. Cela concerne l'envoi par Internet Explorer des cookies de tiers. Vous pouvez résoudre ce problème en allant dans Outils> Options Internet puis en sélectionnant l'onglet Confidentialité. Si vous modifiez le paramètre "Accepter tous les cookies", vous ne verrez plus ce message.

    La manière la plus sûre de le faire serait de cliquer sur le bouton "Sites" et d'autoriser les cookies à partir de l'URL de votre site.

    Entrez la description de l'image ici

    J'ai rencontré SEC7118 lorsque SEC7118 été configuré correctement. J'ai vérifié que les requêtes remplissaient le statut 200 en utilisant le débogueur réseau. Donc, vous pouvez ignorer ce message si votre application fonctionne correctement.

    JavaScript rend le site Web intelligent, beauté et facile à utiliser.