Неможливо отримати дані за допомогою XMLHttpRequest (статус 0 та відповідьText порожній):
xmlhttp = новий XMLHttpRequest (); xmlhttp.open ("GET", "http://www.w3schools.com/XML/cd_catalog.xml", правда); xmlhttp.onreadystatechange = функція () { якщо (xmlhttp.readyState == 4) попередження ("статус" + xmlhttp.status); } xmlhttp.send ();
Він попереджає "статус 0".
Така ж ситуація з запитом localhost (cd_catalog.xml зберігається як локальний файл)
xmlhttp.open ("GET", "http: //localhost/cd_catalog.xml", правда);
Але з IP-адресою localhost IP
xmlhttp.open ("GET", "http://127.0.0.1/cd_catalog.xml", правда);
і з запитом локального файлу
xmlhttp.open ("GET", "cd_catalog.xml", правда);
все гаразд (статус 200)
Що може спричинити проблему (статус = 0) із запитом в Інтернеті?
PS: Заголовки HTTP Live показують, що у всіх 4 випадках все гаразд:
HTTP / 1.1 200 ОК Довжина вмісту: 4742
PS2: локальний веб-сервер Apache на VMWare (хост ОС Win7, гостьова ОС Ubuntu, мережевий адаптер - NAT). Браузер - Firefox.
XMLHttpRequest
не може робити запити між доменами. Однак є деякі шляхи вирішення. Подивіться, наприклад, jquery.
http://127.0.0.1
є випадково ваша тестова сторінка ? ;)