Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как получить текущую страницу браузера (https://javascript.ru/forum/misc/1790-kak-poluchit-tekushhuyu-stranicu-brauzera.html)

psychodrake 17.09.2008 02:51

Как получить текущую страницу браузера
 
Есть необходимость создать скрипт который бы сохранял текущую страницу браузера, отображаемую в нём, считал от неё хэш, затем получал бы эту же страницу, непосредственно делая запрос к ней( к урл), считал от полученной на данном этапе хэш, сравнивал их.

Никак не получается получить текущую страницу браузера. Пробовал через window.content.location, и многое другое.
Привожу код, подскажите пожалуйста.

var displayed_window = window._content.document;
var hex_page = hex_md5(displayed_window);
document.write(hex_page);
document.write(" - - - - - ");

function zzz(){
	var pageAddress = window.location;
	return pageAddress;
}
var current_loc = zzz();

function getXmlHttp(){
  var xmlhttp;
  try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
      xmlhttp = false;
    }
  }
  if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
    xmlhttp = new XMLHttpRequest();
  }
  return xmlhttp;
}


var xmlhttp = getXmlHttp(current_loc)
xmlhttp.open('GET', current_loc, false);
xmlhttp.send(null);
var drresp = xmlhttp.responseText;
var hex_real_page = hex_md5(drresp);
document.write(hex_real_page);
alert(drresp);

ZoNT 17.09.2008 08:48

а что не получается?

Octane 17.09.2008 14:12

может быть document.location ? :)

ZoNT 17.09.2008 14:13

window.location - правильно.

psychodrake 17.09.2008 17:46

var displayed_window = window._content.document; - ничего не возвращает. при проверке там либо андефайнед, либо какой то ещё бред.


Пробовал через innerHTML, но он возвращает в изменённом виде, хэши не совпадут=(

ZoNT 17.09.2008 17:49

не проще ли брать document.body.innerHTML?

psychodrake 17.09.2008 18:05

Та страница, которую я получаю с помощью HMLHTTPrequest отличчается в этом случае, во первых тегами <HTML></HTML>, и как с этим бороться не знаю, чтоб они одинаковыми получились.

Андрей Параничев 17.09.2008 18:09

psychodrake,
Загружать её во фрейм и брать contentDocument.body.innerHTML?

psychodrake 17.09.2008 18:11

Андрей Параничев,
А, не могли бы вы, пожалуйста, описать как всё это делать? А то опыта маловато.

Андрей Параничев 17.09.2008 18:14

psychodrake,
Скажите сначала зачем вам это, для кеширования? Почему бы не проверять такие вещи на серверной стороне?
Сверяя тот же "Content-length"?


Часовой пояс GMT +3, время: 17:35.