В доступе отказано в доступе к свойству "документ"

Я использую следующий скрипт, создайте этот скрипт на своей странице, добавьте iframe, и я хочу получить iframe html.

<script src="http://ads.sonobi.com/ttj?id=881134" type="text/javascript"></script> 

Проблема в том, что в iframe есть внутренний iframe.

Javascript следующая функция, используемая для получения содержимого ifrmae

document.getElementById('f1').contentWindow.document.body.innerHTML 

Когда я запускаю это покажет следующую ошибку

Permission denied to access property 'document'

Как решить проблему, в разрешении отказано.

3 ответа

Ты не можешь

Зачем? Это функция безопасности, позволяющая остановить межсайтовый скриптинг (XSS).

Например, у вас есть iframe, который загружает www.facebook.com, Если эта функция безопасности не реализована, вы можете легко получить данные с этого сайта. От файлов cookie, до того, какой контент находится на странице.

Здесь есть более полезная информация: http://www.veracode.com/security/xss

Я не смотрел на JS, но вы не можете получить HTML с удаленной страницы с помощью JavaScript. Попробуйте PHP CURL.

Пытаться

var frame = document.getElementById('f1');
var doc = frame.contentWindow || frame.contentDocument;
var html = doc.document.body.innerHTML

Источник: Frame / IFrame contentDocument Property.

Другие вопросы по тегам