[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: будет ли работать такой XMLHTTPREQUEST?
quickxyan
решил освоится с XMLHTTPREQUEST, нашел в инете страничку где все расписывается и предоставлены коды. там был такой код на асинхронный запрос:

<script>
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()
xmlhttp.open('POST', 'http://domain.com', true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
if(xmlhttp.status == 200) {
alert(xmlhttp.responseText);
}
}
}
;
xmlhttp.send(null);
</
script>


а вот сам вопрос стоит так. так как мне не приходят в ответ никакие данные, то я хотел бы спросить у вас - будет ли работать такой запрос?! или кто знает куда можно отослать запрос, чтобы увидеть его в действии?!



Спустя 21 минута, 38 секунд (28.04.2011 - 13:05) ApuktaChehov написал(а):
Ничего не понял. Запрос отсылается на сервер иначе куда его еще отправить можно? Ну разве что "на деревню дедушке". Ответные данные приходят полюбому.

Спустя 4 минуты, 19 секунд (28.04.2011 - 13:10) quickxyan написал(а):
то есть, если мне не приходит ничего значит запрос не работает?!

Спустя 14 минут, 51 секунда (28.04.2011 - 13:25) ApuktaChehov написал(а):
Как это не приходит?! Всегда что то приходит. Если ошибка, вернутся ошибка, если сервер ничего не ответил, то вернутся только заголовки. Что вы сделать то хотите?!

Спустя 15 минут, 1 секунда (28.04.2011 - 13:40) Guest написал(а):
Для начала нужно поставить firebug (если firefox) или использовать opera dragonfly. (а если у тебя IE то там тоже есть инструменты разработчика)

И потом уже посмотреть что возвращает тебе этот запрос. Если кстати код этот реальный то у тебя должна быть ошибка, ибо нельзя просто так послать ajax запрос на другой домен (security exception или что то в этом роде)

Спустя 1 час, 6 минут, 20 секунд (28.04.2011 - 14:46) quickxyan написал(а):
ApuktaChehov
хочу отправить xmlhttp - запрос. alert(xmlhttp.responseText); - это вроде и есть вывод ответа сервера. но он не работает.

Guest

Цитата (Guest @ 28.04.2011 - 10:40)
нельзя просто так послать ajax запрос на другой домен (security exception или что то в этом роде)


я ж и спрашивал о том будет ли возвращать хоть что-то в любом случае!

Спустя 1 час, 27 минут, 9 секунд (28.04.2011 - 16:13) ApuktaChehov написал(а):
вот в этой теме я оставил скрипт.

Этот обычный скрипт аякса, только без наворотов как тот, что вы в пример привели. Если есть вопросы задавайте.

Спустя 2 часа, 53 минуты, 41 секунда (28.04.2011 - 19:07) quickxyan написал(а):
скопировал и попробовал, но эффект тот же( абсолютно ничего не происходит по загрузке страницы.

в чем может быть проблема?

Спустя 31 минута, 7 секунд (28.04.2011 - 19:38) ApuktaChehov написал(а):
Что происходит с запросом? Фаербагом посмотрите или ее чем-нибудь. Ошибок нет?!

Спустя 1 час, 54 минуты, 28 секунд (28.04.2011 - 21:32) quickxyan написал(а):
та фаербаг вроде не ругается ни на что.

Спустя 10 минут, 2 секунды (28.04.2011 - 21:42) ApuktaChehov написал(а):
Код в студию.

Спустя 17 минут, 12 секунд (28.04.2011 - 22:00) quickxyan написал(а):
так код ваш-то!


<script>

//Создаем объект XMLHttpRequest для работы Ajax в разных браузерах
if(navigator.appName == "Microsoft Internet Explorer")
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); //для Internet Explorer
else
xmlHttp = new XMLHttpRequest(); //для остальных баузеров

//Если, не удалось создать XMLHttpRequest,
//Сообщам пользователю, что ничего не работает

if (!xmlHttp)
alert("Возможно, Ваш браузер устарел или в нем отключена поддержка JavaScript.Работа невозможна.");

//Функция принимает xml или POST данные в качестве первого аргумента.
//Второй аргумент принимает статус операции(получение данных или отправка)
//Третий аргумент это адрес скрипта к которому отправляется запрос.

function callServer(string, url, request_type, func)
{
//Открываем соединение с сервером
//Первый аргумент(POST) - это метод запроса, второй(url) - адрес скрипта, куда мы отправляем запрос.
//Третий аргумент отвечает за тип запроса, может быть синхронный и асинхронный. (см. ниже)

xmlHttp.open("POST", url, true);

//Оправляем серверу заголовок о типе и кодировке данных
if(request_type == 'xml')
xmlHttp.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
else
xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8");

//Определяем функцию, которая выполнится после ответа cервера
xmlHttp.onreadystatechange = function ()
{
//Запрос xmlhttp регулярно отчитывается о своем состоянии.
//Состояние = 4, означает конец выполнения операций,
//а функция-обработчик проверяет - не настало ли это состояние.

if (xmlHttp.readyState == 4)
{
//Проверяем все ли хорошо. Ответ сервера = 200 обозначает,
//что запрос удовлетворен.

if(xmlHttp.status == 200)
if(request_type == 'xml')
func(xmlHttp.responseXML);
else
func(xmlHttp.responseText);

}
}

//Передаем запрос на сервер
xmlHttp.send(string);
}

callServer('data=1&data1=2', 'http://domain.com', 'text',
function (data)
{
alert(data);
});
</
script>

Спустя 2 минуты, 38 секунд (28.04.2011 - 22:02) ApuktaChehov написал(а):
http://domain.com - это что такое?!

Спустя 15 минут, 2 секунды (28.04.2011 - 22:17) quickxyan написал(а):
ввел такой урл для примера, а что?!

Спустя 9 часов, 51 минута, 23 секунды (29.04.2011 - 08:09) ApuktaChehov написал(а):
Вы можете показать скрипт, который у вас не работает?! Один в один. А не мой код с подставленным для примера адресом.

Спустя 4 часа, 22 минуты, 49 секунд (29.04.2011 - 12:32) quickxyan написал(а):
ох, наверное мы друг друга не понимаем.
мне надо отослать xmlhttprequest. я погуглил и нашел сайт. там на сайте было описано как и для чего такие запросы и тд. и тп.
я скопипастил их код(самый первый пост) и он у меня не работал.
потом я создал тут тему и вы мне дали ссылку на другую тему где вы выложили полностью рабочий пример, который лучше чем тот, что выложил я.
скопировав ваш код и вставив в файл, запустил и скрипт и он тоже не работает
и вот вопрос. может я что-то не так делаю??

Спустя 1 час, 8 минут, 36 секунд (29.04.2011 - 13:40) ApuktaChehov написал(а):
ладно, сделаем проще. Распакуй этот архив в корень сайта и запусти.


_____________
печатаю со скоростью 320 минут в знак...

плюсуем карму не стесняемся
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.