iframe traversera le domaine dans les situations suivantes : 1. Le nom de domaine est différent Lorsque le nom de domaine source de l'iframe est différent du nom de domaine de la page parent, des problèmes inter-domaines se produiront. différent. Lorsque le protocole de l'iframe est différent du protocole de la page parent. Lorsque les numéros de port sont différents, des problèmes inter-domaines se produiront. 3. Les numéros de port sont différents de celui de la page parent. numéro de port de la page parent, des problèmes inter-domaines se produiront ; 4. Les noms de sous-domaines sont différents lorsque le nom de sous-domaine de l'iframe est différent du numéro de port de la page parent, des problèmes inter-domaines se produiront. . Des problèmes inter-domaines se produiront lorsque les noms de sous-domaines sont différents.
Le système d'exploitation de ce tutoriel : système Windows 10, ordinateur Dell G3.
Dans le développement Web, une iframe est un élément HTML utilisé pour intégrer une page Web dans une autre page Web. Cependant, pour des raisons de sécurité, les navigateurs implémentent la politique de même origine, qui restreint l'accès inter-domaines aux iframes.
La politique de même origine est un mécanisme de sécurité du navigateur. Elle exige que les pages Web ne puissent interagir qu'avec des ressources provenant de la même source, c'est-à-dire que le protocole, le nom de domaine et le numéro de port doivent correspondre parfaitement. Si les origines de deux pages Web sont différentes, alors l’interaction entre elles est considérée comme d’origine croisée.
Dans les situations suivantes, l'iframe aura des problèmes inter-domaines :
1. Différents noms de domaine : lorsque le nom de domaine source de l'iframe est différent du nom de domaine de la page parent, des problèmes inter-domaines se produiront. Par exemple, le nom de domaine de la page parent est www.example.com et le nom de domaine source de l'iframe est sub.example.com.
2. Différents protocoles : Lorsque le protocole de l'iframe est différent du protocole de la page parent, des problèmes inter-domaines se produiront. Par exemple, la page parent utilise le protocole https, tandis que l'iframe utilise le protocole http.
3. Différents numéros de port : lorsque le numéro de port de l'iframe est différent du numéro de port de la page parent, des problèmes inter-domaines se produiront. Par exemple, l'URL de la page parent est www.example.com:8080 et l'URL de l'iframe est www.example.com:3000.
4. Différents noms de sous-domaines : lorsque le nom de sous-domaine de l'iframe est différent du nom de sous-domaine de la page parent, des problèmes inter-domaines se produiront. Par exemple, le nom de domaine de la page parent est www.example.com et le nom de domaine de l'iframe est sub.example.com.
Afin de résoudre le problème inter-domaines, vous pouvez utiliser les méthodes suivantes :
1. Utilisez un serveur proxy : en définissant un proxy côté serveur, la requête inter-domaines est transmise au serveur cible, et puis la réponse est renvoyée au client.
2. JSONP : utilisez la technologie JSONP (JSON with Padding) pour envoyer des requêtes inter-domaines au serveur cible en créant dynamiquement la balise