Я создаю приложение Backbone.js для общения с API, который я тоже создал.
API находится на сайте api.foo.com по адресу web.foo.com
Мне удалось заставить CORS работать с соответствующими полями заголовка в apache
Header set Access-Control-Allow-Origin "http://web.foo.com"
Header set Access-Control-Allow-Methods "GET,PUT,POST,DELETE,OPTIONS"
Header set Access-Control-Allow-Headers Content-Type
Header set Access-Control-Allow-Credentials "true"
Header append Access-Control-Allow-Headers Origin
Header append Access-Control-Allow-Headers Accept
Header append Access-Control-Allow-Headers X-Requested-With
и установив xhrFields на
f = { withCredentials: true}
params.xhrFields = f;
// Make the request, allowing the user to override any Ajax options.
$.ajax(params);
, все это работает с Chrome.Я собираюсь сделать сообщение для входа в api.foo.com/sessions, получить cookie, а затем сделать еще один запрос к api.foo.com с этим cookie.
К сожалению, когда я перешел на Firefox 10.0.7,это не сработало.С withCredentials, похоже, не удалось jquery подобрать cookie и использовать его.
В отличие от большинства вопросов, связанных с этим в stackoverflow, это не единственный вопрос, мне нужно, чтобы это работало согласованно во всех браузерах (Я еще даже не дошел до IE).
Я использую
Backbone.js 0.9.1 jquery 1.7.1 требует подчеркивания 1.0.7 1.3.1
Работает на
Chrome 17.0.963.65
не работает на firefox 10.0.2
Кто-нибудь может мне помочь?