我正在对后端的api进行ajax调用,api正在返回。如果我在console.log()中获取成功数据和错误数据,它会在控制台上提供"资源登录",200 ok但是当我在该auth / login路由的网络选项卡响应中查看它时,它显示"无法加载响应数据"。而这有时只会发生,而不是总是发生。为什么? 这是我的ajax电话的片段。
ajax
.post('auth/login', {
data: {
oauth_provider: 'google',
oauth_token: (isToken ? authResult : authResult.access_token)
},
cache: false
})
.done(function(data) {
console.log(data); // Resource Logged in
})
.error(function(err){
console.log(err);
})
这是我的ajax.js的内容
define(
[
'jquery',
'util',
],
function ($, util) {
var ajax = {
request: function (type, url, options) {
if (url.indexOf('http') === -1) {
url = util.url(url);
}
if (options === undefined) {
options = {};
}
options.type = type
options.url = url;
return $.ajax(options);
},
get: function (url, options) {
return ajax.request('GET', url, options);
},
post: function (url, options) {
return ajax.request('POST', url, options);
},
put: function (url, options) {
return ajax.request('PUT', url, options);
},
delete: function (url, options) {
return ajax.request('DELETE', url, options);
}
};
return ajax;
}
)
答案 0 :(得分:3)
显然,事实证明清理cookie存在一些问题。在清理它们时,系统表现良好。 不确定需要帮助!
答案 1 :(得分:1)
我证实了这一点。自Chrome版本45和我看到我的一些Ajax请求获得200作为状态代码,但显示内容“无法加载内容”时出现问题。
我的Ajax请求在for循环中,请求失败的内容再次使内容加载正常。
似乎解决了for循环内部在请求和另一个之间使用setTimeout
。
答案 2 :(得分:1)
对于将来来这里的人,请回答:https://stackoverflow.com/a/38925237/1235072
更多信息:https://bugs.chromium.org/p/chromium/issues/detail?id=141129
答案 3 :(得分:0)
“空缓存和硬重载”为我工作。
答案 4 :(得分:-1)
由于回发,这发生在我的项目中。 当我解决了回发问题时,错误就消失了。