Аякс не получает ответ от с удаленного сервера.

Тема в разделе "Web 2.0, AJAX, Ruby, RSS технологии", создана пользователем boray, 26 янв 2010.

Статус темы:
Закрыта.
  1. boray

    boray Гость

    Всем привет!

    Подскажите пожалуйста нубу как решить проблемы(

    Делаю первый раз Ajax: взял исходники простейшего клиентского приложения, оттестил на локале - все хорошо(аякс отправляет данные -> php скрипт генерит ответ -> аякс выводит данные.).
    Когда решил указать удаленный хост в качестве сервера для получения данных аяксом возникли проблемы:
    1) FF не отказал в доступе :rolleyes: , и обратился к скрипту на удаленном сервере. Но радости мало(, т.к. ответа мой аякс не получил, хотя я точно знаю что php-скрипт на удаленном сервере выполнился(записал результат выполнения в файл). Почему такое может происходить? Если на локале все нормально с системой.
    2) IE написал "отказанно в доступе" - политика блин безопасности), и как тогда быть в этом случае - если нужно?)

    Ниже код клиента дан:

    Код (Text):
    <html>
    <head>
    </head>

    <body>

    <script type="text/javascript" language="javascript">
    // <![CDATA[

    var http_request = false;

    function makeRequest(url) {
    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('Giving up :( Cannot create an XMLHTTP instance');
    return false;
    }

    http_request.onreadystatechange = alertContents;
    http_request.open('POST', url, true);
    http_request.send('5');
    }

    function alertContents() {
    if (http_request.readyState == 4) { // COMPLETED
    if (http_request.status == 200) {   // HTTP STATUS
    alert(http_request.responseText);
    } else {
    alert('There was a problem with the request.');
    }
    }
    }

    // ]]>
    </script>

    <span
    style="cursor: pointer; text-decoration: underline"
    onclick="makeRequest('http://www.УДАЛЕННЫЙ_СЕРВЕР.ru/ajax.php')">

    Make a request

    </span>

    </body>
    </html>
     
  2. nws

    nws Гость

    AJAX POST напрямую нельзя посылать на удаленный сервер.

    Используй iframe
    или
    ajax обращается к локальному скрипту, а тот лезет на удалённый сервер
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей