Maison > interface Web > js tutoriel > Comment puis-je récupérer l'URL d'un IFRAME ?

Comment puis-je récupérer l'URL d'un IFRAME ?

Patricia Arquette
Libérer: 2024-11-22 06:26:25
original
1051 Les gens l'ont consulté

How Can I Retrieve the URL from an IFRAME?

Récupération de l'URL actuelle à partir d'un IFRAME

Lors de l'affichage de contenu provenant de sources externes au sein d'un IFRAME, il peut être souhaitable d'accéder à l'URL du page affichée. Cependant, en raison de limitations de sécurité, cet accès n'est possible que dans des circonstances spécifiques.

Restrictions de sécurité inter-origines

Pour des raisons de sécurité, récupérer l'URL d'un IFRAME au sein JavaScript est soumis à des restrictions inter-domaines. Concrètement, il n'est possible d'obtenir l'URL que lorsque l'IFRAME et le JavaScript de référencement sont hébergés sur le même domaine.

Accès à l'URL lorsque les domaines correspondent

Dans le scénario où le contenu de l'IFRAME et le JavaScript de référencement sont servis à partir du même domaine, l'obtention de l'URL actuelle est simple :

document.getElementById("iframe_id").contentWindow.location.href
Copier après la connexion

Remplacer "iframe_id" avec l'identifiant de l'IFRAME spécifique.

Limitations inter-domaines

Cependant, lorsque les domaines de l'IFRAME et de la page parent diffèrent (inter-domaine) , les mesures de sécurité XSS (cross-site scripting) empêchent la récupération directe d'URL. En effet, autoriser un accès illimité aux informations d'URL à partir d'un domaine externe présente un risque de sécurité.

Solutions alternatives

Si les domaines ne correspondent pas et que la récupération directe de l'URL n'est pas possible , envisagez des solutions alternatives :

  • Domaine enfant servi à partir du domaine parent : hébergez le contenu IFRAME sur un sous-domaine du parent domaine, permettant l'accès à l'URL.
  • Communication Ajax : Établissez une connexion directe entre la page parent et le domaine enfant en utilisant la technique Ajax pour récupérer l'URL à distance.
  • Partage de ressources cross-origin ( CORS ): Avec CORS, le serveur peut explicitement autoriser les requêtes d'origine croisée, permettant l'accès à l'URL sous certaines conditions.

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