Pour toute application WEB, la chose la plus importante est la sécurité. Il existe divers contrôles de sécurité dans JS pour empêcher les scripts malveillants d'attaquer votre machine, et certaines de ces méthodes de sécurité spécifiques sont utilisées dans divers navigateurs. a un modèle complètement unique et complet en matière de signature de scripts et d'application de privilèges. Nous devons savoir quelles mesures de sécurité sont communes à tous les navigateurs et lesquelles sont spécifiques au navigateur. De cette façon, nous pouvons créer des scripts JS plus sécurisés.
.
Même politique d'origine ;
JS ne peut communiquer qu'avec les pages du même domaine. Par exemple : exécuté sur http:// Le script. sur domain:port/app1/page.html; ne peut pas interagir avec la fenêtre du navigateur ou l'iframe de http://domain:port/app3/page.html;. Il ne peut pas accéder à ses cookies, recevoir ses réponses HTTP, etc. il peut envoyer des requêtes HTTP vers n'importe quelle autre source) ; AJAX et le webservice sont également régis par cette politique. Cette méthode est appelée la même politique d'origine
Les conditions pour que deux scripts soient considérés comme de même origine ; sont :
Le protocole est le même (par exemple, http://)
Le port est le même (généralement 80)
Le nom de domaine est le même
Si l'une de ces trois conditions Si l'une d'elles n'est pas remplie, les deux scripts ne sont pas autorisés à interagir. Par exemple : le script sur www.mondomaine.com ne peut pas accéder à la page sur vidéo.mondomaine.com. car les deux noms de domaine sont différents, bien que ce dernier soit un enfant du premier domaine. De même, il ne peut pas accéder à la page www.mydomain.com:8080 car le port est différent, ni à about:blank car le nom de domaine est différent. le protocole est différent (ce dernier n'est pas http://)
Impact de la politique de même origine :
Elle affecte l'interaction avec BOM et DOM Par exemple. : l'objet document de n'importe quelle page provenant de sources différentes n'est pas accessible, ce qui signifie qu'aucun DOM n'est accessible. Par exemple :
Il y a deux iframes sur la page qui font référence à des sources différentes ; 🎜>alert(frames[1].location.href);
alert(frames[ 1].document.location.href);//Failed
La fenêtre et le document ont tous deux un emplacement attribut d'objet. Si vous exécutez ces deux lignes de code dans une page qui n'est pas la même que la page cadre, la deuxième ligne signalera une erreur.
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!