Maison > interface Web > js tutoriel > Un regard approfondi sur les cors

Un regard approfondi sur les cors

Jennifer Aniston
Libérer: 2025-02-18 11:01:08
original
543 Les gens l'ont consulté

Cet article, évalué par des pairs par Panayiotis "PVGR" Velisarakos (avec merci à tous les examinateurs de pairs SitePoint!), Explore le partage de ressources croisées (CORS), une API HTML5 permettant aux sites Web d'accès auparavant restreint des ressources externes restreintes. CORS détend la politique d'origine homosexuelle, permettant des demandes à différents domaines. Par exemple, avant CORS, les demandes de l'Ajax inter-domaines étaient impossibles. Cet article montre comment les COR améliorent les expériences du Web.

An In-depth Look at CORS An In-depth Look at CORS

Prise des clés:

  1. CORS est soutenu par la plupart des navigateurs modernes.
  2. L'en-tête Access-Control-Allow-Origin détermine les origines qui peuvent accéder aux réponses du serveur.
  3. L'en-tête Access-Control-Allow-Credentials contrôle l'accès aux cookies.
  4. Demandes simples (obtenir, tête, post) ne déclenchent pas les piqûres; Demandes plus complexes font.
  5. L'attribut crossorigin (avec anonymous ou use-credentials valeurs) contrôle la gestion des informations d'identification pour <img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/173984767246953.jpg" class="lazy" alt=" Un regard en profondeur sur CORS "> <code><img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/173984767246953.jpg" class="lazy" alt="An In-depth Look at CORS "> <p><strong>Preflights:</strong></p> <p>For complex requests (methods beyond GET/HEAD/POST, or custom headers), preflights (an initial OPTIONS request) verify server acceptance. The server responds with <code>Access-Control-Allow-Origin Access-Control-Allow-Credentials Access-Control-Allow-Methods Ferflights: Access-Control-Allow-Headers Access-Control-Max-Age Access-Control-Request-Method Pour les demandes complexes (méthodes au-delà de Get / Head / Post, ou en-têtes personnalisées), les avant -ïs (une demande d'options initiale) vérifient l'acceptation du serveur. Le serveur répond avec Access-Control-Request-Headers,

    ,

    , An In-depth Look at CORS et

    en-têtes. Le client envoie

    et dans le Fildlight.

    Access-Control-Allow-Origin img.setAttribute('crossOrigin', 'anonymous');

    CORS ET TOIVAS IMAGES:

    An In-depth Look at CORS

    Pour utiliser des images externes dans une toile, le serveur doit activer CORS (par exemple, en définissant

    dans la configuration du serveur). Le code côté client nécessite . Sans COR, une exception de sécurité se produit. crossorigin

    crossorigin Origin L'attribut anonymous: use-credentials Access-Control-Allow-Credentials: true

    Lors de la récupération de ressources externes (images, feuilles de styles, scripts) à l'aide de balises HTML, l'attribut

    déclenche une demande COR avec l'en-tête . omet les informations d'identification;

    les inclut (nécessitant le côté serveur ). Conclusion:

    CORS améliore considérablement le développement Web en facilitant l'accès aux ressources d'origine croisée. Il est crucial de comprendre ses implications de sécurité et de la mettre en œuvre correctement.

    Questions fréquemment posées (FAQ):

    La section FAQS fournit des réponses détaillées aux questions courantes sur les COR, couvrant l'objectif des en-têtes, la manipulation des cookies, les demandes simples vs biens, la configuration côté serveur, les risques de sécurité, la compatibilité des demandes HTTP, le rôle des en-têtes spécifiques, le comportement du navigateur , tests, et les différences entre CORS et JSONP. (La section FAQ d'origine est conservée dans son intégralité.)

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