Доступ к родительскому URL-адресу из iFrame: ограничения и обходные пути
Доступ к URL-адресу родительского фрейма из iFrame может оказаться сложной задачей, особенно если iFrame расположен в другом субдомене. Это связано с ограничениями безопасности, налагаемыми мерами предотвращения межсайтового скриптинга (XSS).
При доступе к iFrame из того же домена и поддомена, что и родительский фрейм, доступ к местоположению родительского фрейма должен быть простым с использованием таких выражений, как родительский .document.location или родительское.окно.location. Однако, как подчеркнул пользователь, этот подход не работает, если iFrame находится в другом субдомене.
Чтобы дополнительно проиллюстрировать этот момент, рассмотрим приведенный пример, где pageA.html размещен на http://www.mysite. .com/ и pageB.html (iFrame) размещаются на http://qa-www.mysite.com/. Попытка получить URL-адрес родительского объекта из pageB.html приведет к ошибке отказа в доступе. Это подтверждает, что на поддомены также распространяются ограничения на межсайтовое выполнение сценариев.
Хотя прямой доступ к родительскому URL-адресу в этих обстоятельствах запрещен, существует обходной путь, который можно использовать. Чтобы получить URL-адрес родительского фрейма, можно использовать следующий код JavaScript:
var url = (window.location != window.parent.location) ? document.referrer : document.location.href;
Примечание:
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3