Maison  >  Article  >  interface Web  >  Quelle est la différence entre cors et ajax

Quelle est la différence entre cors et ajax

WBOY
WBOYoriginal
2022-07-01 16:52:271472parcourir

La différence entre cors et ajax est la suivante : lorsque cors demande, plusieurs mots-clés seront ajoutés à l'en-tête de la requête HTTP pour indiquer que la requête actuelle est une requête inter-domaine, mais ces mots-clés ne seront pas ajoutés lorsque ajax demande cors ; "Cross" - L'abréviation de "partage de ressources d'origine" signifie partage de ressources entre domaines.

Quelle est la différence entre cors et ajax

L'environnement d'exploitation de cet article : système Windows10, version javascript1.8.5&&html5, ordinateur Dell G3.

La différence entre CORS et Ajax :

Il n'y a aucune différence entre CORS et Ajax lors de l'envoi de requêtes. Ce sont tous deux des requêtes http. La seule différence est que lors des requêtes CORS, plusieurs mots-clés seront ajoutés au fichier. En-tête de requête http. Utilisé pour indiquer que la requête actuelle est une requête inter-domaines.

Connaissances étendues :

CORS est une norme du W3C, son nom complet est "Partage de ressources inter-origines". Nous savons qu'il existe un problème inter-domaines lors de l'utilisation d'un navigateur pour envoyer des requêtes http (ajax). La solution inter-domaines actuelle est CORS.

Il est particulièrement souligné ici que le cross-domain dont nous parlons souvent n'est qu'une limitation du navigateur. Si nous utilisons un script pour envoyer des requêtes ou des requêtes via un serveur, il n'y aura pas de problèmes inter-domaines. en effet, le seuil d'utilisation du navigateur est très bas. Afin d'empêcher les personnes ayant des arrière-pensées d'attaquer les utilisateurs ordinaires, des politiques inter-domaines sont introduites

Introduction à CORS

CORS est une norme de communication officiellement recommandée publiée par le W3C. le 16 janvier 2014. Il résout principalement le problème des applications Web d'agent utilisateur passant par Ajax ou d'autres mécanismes pour accéder aux ressources et obtenir des données à partir d'un autre site.

Prémisse : le serveur doit ajouter des fonctions associées pour prendre en charge CORS, c'est-à-dire définir la valeur autorisée de Access-Control-Allow-Origin de http

La communication CORS est complétée par le navigateur et ne nécessite pas la participation de l'utilisateur. Par défaut, la navigation communique via Ajax. Si le navigateur détecte que la requête actuelle est inter-domaine lors de l'envoi d'une requête, elle sera automatiquement convertie en CORS

Les deux modes de requête CORS

Le navigateur divise la requête CORS en deux catégories : requête simple et requête non simple

La requête simple consiste à utiliser la méthode de requête définie pour demander des données

La requête non simple consiste à utiliser la méthode de requête définie pour demander des données, envoyez d'abord une requête OPTIONS pour voir si le le serveur le permet Le client envoie une requête non simple. Ce n'est qu'après avoir réussi la "pré-vérification" qu'une autre requête sera envoyée pour la transmission des données

Tant que les deux conditions suivantes sont remplies en même temps, il s'agit d'une simple demande.

Condition 1:

La méthode de la demande est l'une des trois méthodes suivantes:

head

get

Post

condition 2:

http Les informations d'en-tête ne dépassent pas les champs suivants:

rreee

Demande simple

Une requête simple est que le navigateur envoie directement une requête CORS (requête ajax). Avant l'envoi, le navigateur ajoutera un entête de requête Origin à cette requête http. Dans les informations d'entête ci-dessus, le champ Origine permet d'indiquer de quelle source provient cette requête (protocole + nom de domaine + port). Le serveur décide d'accepter ou non la demande en fonction de cette valeur.

Demande non simple

Une demande non simple consiste à envoyer une demande OPTIONS avant d'envoyer une demande pour vérifier à l'avance si la demande est autorisée. L'objectif principal est d'empêcher les demandes inter-domaines d'endommager ou de voler l'arrière-plan. données. Requêtes simples La sécurité est faible. Le serveur renvoie les données après avoir traité la requête. En mode requête non simple, le serveur ne doit pas traiter la requête lors de sa détection préalable.

【Recommandation de didacticiel connexe :

Tutoriel vidéo AJAX

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:
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