Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.04.2012, 20:57
Интересующийся
Отправить личное сообщение для nickgu Посмотреть профиль Найти все сообщения от nickgu
 
Регистрация: 20.04.2012
Сообщений: 13

Один и тот же ответ от разных запросов.
Столкнулся с такой проблемой. Делаю запрос и получаю ответ:

<html>
<head>
<meta http-equiv="cache-control" content="no-cache" />
<title></title>
<script type="text/javascript" language="javascript">

	function makeRequest(url) {
		var http_request = false;
		if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
		http_request.overrideMimeType('text/xml');

		}
		} else if (window.ActiveXObject) { // IE
		try {
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
		try {
		http_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
		}
		}
		if (!http_request) {
		alert('Cannot create XMLHTTP instance');
		return false;
		}
		http_request.onreadystatechange = function() { alertContents(http_request); };
		http_request.open('GET', url, true);
		http_request.send(null);
	}
		
		
		
	function alertContents(http_request) 
		if (http_request.readyState == 4) {
		if (http_request.status == 200) {
		alert(http_request.responseText);
		
		} else {
		alert('There was a problem with the request. Please try again in a few seconds.');
		}
		}
	}




makeRequest('http://www.site.com?id=100');
</script>
</head>
<body>
</body>


Получаю обратно один и тот же ответ, если id будет 100, или 200, или 300.
Если в браузере открою http://www.site.com?id=100 - увижу правильные ответы.

В чем может быть дело?
Ответить с цитированием
  #2 (permalink)  
Старый 25.04.2012, 21:36
Интересующийся
Отправить личное сообщение для nickgu Посмотреть профиль Найти все сообщения от nickgu
 
Регистрация: 20.04.2012
Сообщений: 13

Помогла полная очистка истории браузера.

Но это не решение.
Ответить с цитированием
  #3 (permalink)  
Старый 25.04.2012, 21:59
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

гет запросы кешируются браузером
варианты -отдавать заголовки с запретом кеширования
отдавать заголовки со временем текущим (ласт модифед)
добавлять доп элементы в запрос
выполнять пост запросы
тема десятки раз поднималась на форуме и неоднократно на неё отвечали
Ответить с цитированием
  #4 (permalink)  
Старый 25.04.2012, 22:35
Интересующийся
Отправить личное сообщение для nickgu Посмотреть профиль Найти все сообщения от nickgu
 
Регистрация: 20.04.2012
Сообщений: 13

добавлять доп элементы в запрос - не помогает, т.к. даже переменные get меняются.

варианты -отдавать заголовки с запретом кеширования
отдавать заголовки со временем текущим (ласт модифед)

Это я так понимаю не сделать средствами JS?
Ответить с цитированием
  #5 (permalink)  
Старый 25.04.2012, 23:00
Интересующийся
Отправить личное сообщение для nickgu Посмотреть профиль Найти все сообщения от nickgu
 
Регистрация: 20.04.2012
Сообщений: 13

http_request.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");


такое попробовал - не работает.
Ответить с цитированием
  #6 (permalink)  
Старый 25.04.2012, 23:27
Интересующийся
Отправить личное сообщение для nickgu Посмотреть профиль Найти все сообщения от nickgu
 
Регистрация: 20.04.2012
Сообщений: 13

Методом Post тоже самое
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PHP: несколько AJAX запросов с долговременной обработкой на сервере FINoM Серверные языки и технологии 9 20.03.2012 19:50
Ajax - JSON - не распознает пришедший ответ Майский Кот jQuery 1 14.05.2009 00:40