Ajax GET-запрос превращается в OPTION-запрос - PullRequest
2 голосов
/ 28 сентября 2010

Я испытываю странное поведение с запросом ajax на общем Linux-сервере Godaddy. Запрос отлично работает на многих других серверах, на которых я его тестировал, но на этом запрос GET по какой-то причине превращается в запрос OPTIONS.

Вот код js (с помощью mootools 1.1):

var a = new Ajax(myurl,{
            method: 'get',
            onComplete: function( response ){
                $('my_div').style.display="none";
                output_display( response );
            }
        });
        a.request();

Вы можете видеть, что метод определен как GET. Тем не менее, когда я наблюдаю, как запрос происходит с Firebug, он передается как запрос OPTIONS. Любые мысли о том, как или почему это произойдет?

1 Ответ

2 голосов
/ 29 сентября 2010

обычно для такого поведения во время запросов XHR (ajax) есть две причины.

  1. мостовое соединение протокола (от https к http или наоборот), в результате чего протокол URL-адреса запроса отличается от запрошенного URL-адреса
  2. разница субдоменов (например, запросы domain.com от www.domain.com)

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

читает:

http://www.w3.org/TR/access-control/#cross-origin-request-with-preflight0

способы обхода ограничений междоменной политики: http://www.nczonline.net/blog/2010/05/25/cross-domain-ajax-with-cross-origin-resource-sharing/

и т. Д. И т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...