
27.10.2015, 21:18
|
Интересующийся
|
|
Регистрация: 02.06.2011
Сообщений: 16
|
|
В локальном html файле отобразить страницу Яндекса с заменой
Добрый день!
Вопрос следующий.
Необходимо создать html страницу, которая будет находиться у пользователей на рабочих столах (локально).
В данном файле требуется взять исходный код страницы Яндекса (некого корпоративного ресурса), заменить в коде вхождение слова Погода (ссылки на некий ip адрес на другой адрес) на какое то свое слово, и отрисовать отредактированный код (например с помощью document.write(edited-html-code) на Js).
Страница должна работать в ie8/9, Firefox.
Какие варианты могут быть?
Могу сделать экзешник на vb, который скачает нужную страницу на локал, сделает нужные замены, и вызовет объект интернет эксплорера, отобразив страницу, но хочется всё же без экзешника а с помощью скрипта...
У меня Все попытки создать что то скриптовое заканчиваются проблемой cross domain protection (xmlhttprequest, Iframe, ...)
Последний раз редактировалось optik77, 27.10.2015 в 21:23.
|
|

27.10.2015, 22:05
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от optik77
|
У меня Все попытки создать что то скриптовое заканчиваются проблемой cross domain protection
|
Поэтому и нужно выполнять как ПО, а не скрипт из под браузера, ибо нельзя, доступ к чужому ресурсу не разрешен.
|
|

27.10.2015, 22:11
|
Интересующийся
|
|
Регистрация: 02.06.2011
Сообщений: 16
|
|
Может всё же есть какие нибудь примеры подобного "обмана"?
В статьях мелькали слова jsonp, postMessage.. Но честно говоря эти технологии вообще не знакомы мне.
|
|

27.10.2015, 22:31
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
jsonp - есть такое, но и сервер должен отдавать соответствующий заголовок.
|
|

28.10.2015, 17:25
|
Интересующийся
|
|
Регистрация: 02.06.2011
Сообщений: 16
|
|
Аякс тоже не спасет?..
|
|

28.10.2015, 17:32
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Нет, пока серер не будет передавать заголовок Access-Control-Allow-Origin для конкретного домена или для всех разрешающий такой доступ, ничего не получится.
|
|

28.10.2015, 17:41
|
 |
Профессор
|
|
Регистрация: 30.04.2012
Сообщений: 3,018
|
|
Сообщение от optik77
|
Может всё же есть какие нибудь примеры подобного "обмана"?
В статьях мелькали слова jsonp, postMessage.. Но честно говоря эти технологии вообще не знакомы мне.
|
Можешь создать отдельную страницу на каком-нибудь хостинге, которая с помощью php будет брать контент с яндекса. Ну, а там уже потом отдавать это всё через JSONP.
get-yandex.php:
header('Content-Type: text/javascript');
$content = file_get_contents('http://yandex.ru');
echo 'yandexCallback("' . addslashes($content) . '")';
А это в локальном файле:
<!doctype>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<script type="text/javascript">
function yandexCallback(content) {
alert(content);
}
</script>
<script src="http://mysite.ru/get-yandex.php" type="text/javascript"></script>
</body>
</html>
Последний раз редактировалось ruslan_mart, 28.10.2015 в 17:49.
|
|

28.10.2015, 18:08
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от Ruslan_xDD
|
Ну, а там уже потом отдавать это всё через JSONP.
|
Если через свой сервер, то не обязательно JSONP, можно что угодно, сервер то свой. )
|
|

28.10.2015, 18:16
|
Интересующийся
|
|
Регистрация: 02.06.2011
Сообщений: 16
|
|
Ruslan_xDD,
Спасибо! Появилась возможность на неком внутренеем сервачке с поднятым xampp создать свою страничку пхп, как вы написали выше get-yandex.php, которая на себе всегда будет показывать код яндекса, а затем в своем локальном файле штмл содрать его.
Вопрос в том, нужно ли давать какие то привилегии файлу get-yandex.php, чтобы мой локальный файл сумел выдрать с него этот код, а то изначальная проблема может зациклиться перенесясь со страницы Яндекса на мою фейковую страницу (что то типа заголовка access control allow origin о котором писали выше или что то еще) ?
А также останется найти пхп код функции file_get_contents, так?
|
|

28.10.2015, 18:23
|
Интересующийся
|
|
Регистрация: 02.06.2011
Сообщений: 16
|
|
laimas,
Поясните пожалуйста, что значит свой/не свой сервер? Изначальная задача состоит в том чтобы выдрать код некой страницы с внутреннего корпоративного интранетовского сервера, но расположенного в другой сети, нежели наши рабочие компы.
Тот 'наш' сервер с поднятым xampp о котором я написал выше, также находится в другой сети, получается что он не поможет мне и будет 'не своим'?
Картина следующая:
Рабочие станции на которых будет работать создаваемый штмл - в сети 10.95.128.ххх
Сервер с нужной штмл страницей, которую хотим украсть - в сети 10.85.151.65 (к примеру)
'Наш' сервачок с xampp на котором я могу создать свои пхп страницы - в сети 10.95.129.11(к примеру)
|
|
|
|