Ошибка Evil Firefox - " параметр или операция не поддерживаются базовым объектом"
Я пытаюсь понять, что здесь происходит. Я занимаюсь этим уже несколько часов и не могу понять, почему это происходит.
Я делаю несколько вызовов AJAX, и я продолжаю получать эту ошибку только в Firefox (версия 21) на Mac OS X.
здесь ошибка:
"[Exception... "A parameter or an operation is not supported by the underlying object"
code: "15" nsresult: "0x8053000f (InvalidAccessError)" location:
"https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js Line: 6"
Я делаю вызов CORS, поэтому я настроил свой AJAX следующим образом:
$.ajaxSetup({
crossDomain: true,
xhrFields: {
withCredentials: true
}
});
и впредь продолжайте вызовы. В принципе, есть ли у кого-нибудь опыт с этой ошибкой? Я вижу некоторые сообщения в интернете, но все они, похоже, связаны с Междоменным CSS, который я не использую.
3 ответов
хорошо, поэтому после нескольких часов тестирования (и отличной дискуссии от @Dave и @danronmoon, я наконец понял, что происходит.
вызовы CORS (Междоменный обмен ресурсами), которые я делал, были установлены на "async: false" -- (который я понимаю, что не включил в свой исходный пост, поскольку я думал, что это несущественно) это, кажется, работает нормально во всех браузерах, кроме Firefox, где jQuery будет лаять на вас, и ваш вызов ajax потерпит неудачу.
спасибо всем за помогите, и я надеюсь, что это поможет кому-то еще!
Да, это проблема CORS, вызванная использованием ajax. Но, как спрашивает user320550, что делать, если вам нужно использовать свойство "async:false"? Я обнаружил, что использование свойства "withCredentials:false" в качестве обходного пути устраняет проблему в firefox и не влияет на другие браузеры.