如果发送异步请求,错误回调不起作用,但成功! 它在Android和浏览器中运行良好。在iPhone中,它适用于同步请求。这是我的代码。其他 API 工作正常。
$.ajax({
type: 'POST',
url: "https://api.cloud.appcelerator.com/v1/users/login.json?key=xxxxxxxxx",
data: {
"login": useremail,
"password": password
},
success: function (resp) {
console.log(resp);
console.log('User logged-in successfully');
},
error: function (e) {
console.log(e)
}
});
API 返回状态代码 200 表示正确的电子邮件和密码,但 401 返回不正确的电子邮件和密码,因此如果状态代码为 200,它运行良好,我得到成功的响应。
这似乎是 Cordova + iOS + jQuery 组合的一个非常普遍的问题。
似乎很少有方法可以解决此401错误响应处理问题。一种是在发出 AJAX 请求和处理错误时添加超时超时属性。另一种方法是在服务器端处理它,方法是通过 HTTPS 发送请求,并在发生 401 错误时返回带有错误详细信息的身份验证令牌。
请您查看此帖子以获取更多信息。
此外,目前您无法在iOS中区分这两个错误(401和408错误),因为我可以看到此缺陷在官方Apache Cordova错误跟踪系统中仍然打开。