jQuery(async ajax section)的官方文档说:
跨域请求和dataType:" jsonp"请求不支持 同步操作。
然而,这适用于所有最近的浏览器,但firefox版本> = 20.这是我正在制作的电话类型:
$.ajax({
type : "GET",
async: false,
dataType : "text",
url : link,
xhrFields: { withCredentials: true },
success: function(response){
console.log("success ");
},
error: function(error){
console.error(error);
}
});
有没有人知道为什么会这样?
更新 我用jQuery和vanilla XHR测试了错误总是一样的
[例外......"不支持参数或操作 基础对象"代码:" 15" nsresult:" 0x8053000f (InvalidAccessError)"
答案 0 :(得分:18)
使用beforeSend
代替xhrField
。
$.ajax({
type : "GET",
async: false,
dataType : "text",
url : link,
beforeSend: function(xhr) {
xhr.withCredentials = true;
},
success: function(response){
console.log("success ");
},
error: function(error){
console.error(error);
}
});