2013-04-15 5 views
4

Я пытаюсь сделать несколько запросов CORS (PUT, GET, POST). Запросы отлично работают в Chrome и Safari. Параметры отклоняются, но другие запросы проходят.FireFox Отправка запроса CORS (с использованием jQuery)

Ниже приводится моя функция поиска. Chrome и Safari вызвать функцию обратного вызова с возвращенным данных:

function Search (q, fn,){ 
console.log(q) 
$.ajax({ 
    url: sumeURL+q, 
    dataType: 'json', 
    headers: headers 
}).done(function(data){ 
    fn(data); 
}); 
} 

FireFox регистрирует строку запроса, так что я знаю, что это читает вызов AJAX (я удалил свой предыдущий вопрос, потому что я думал, что, может быть, FireFox задыхался на что-то, прежде чем он попал в AJAX - это не так).

Я использую FireBug, а вкладка Net не отображает ВАРИАНТЫ запросов GET из этой функции поиска.

Я посмотрел на это SO question, но мне нужно сделать это для разработки не разработки, поэтому добавление браузера не является хорошим вариантом.

Какие условия заставят FireFox отказаться от отправки запроса, но не имеет значения для Chrome или Safari?

Если вам нужно, чтобы я опубликовал данные контроля доступа с сервера, LMK.

+0

Какую версию Firefox вы используете? Можете ли вы воспроизвести ошибку на http://test-cors.org – monsur

+0

Нет, я не могу ее настроить, потому что Access-Control-Allow-Origin разрешен только с определенных доменов (домен, в который я делаю запрос, включен). Я нахожусь на FF 20.0 –

+0

По моему опыту, FF регистрирует причину, по которой он не выполнил запрос. Итак, что он регистрирует в вашем случае? – oberlies

ответ

2

Ваш ответ может быть в ответе: Why does the preflight OPTIONS request of an authenticated CORS request work in Chrome but not Firefox?

Похоже, Firefox перестанет посылать запросы, если ответ на запрос перед полетом является 401, тогда как Webkit браузеров будет идти вперед с реальным запросом (GET, POST и т.д. .)

РЕДАКТИРОВАТЬ: но опять же, вы даже не видите, как отправляется запрос OPTIONS ... тем не менее вышеупомянутое сообщение может быть полезно.

+0

На самом деле поведение Chromium регистрируется как ошибка: https://groups.google.com/a/chromium.org/forum/?fromgroups=#!topic/chromium-bugs/ihPAqQGNYnk этот поток говорит, что он не должен принимать GET или POST после отказа от ВАРИАНТОВ –

Смежные вопросы