-1
我使用jQuery的与ASP.net MVC(后端不`吨真的很重要,我认为)为什么AJAX请求成功,但它最终会失败,再打
在JavaScript中,我有这样一个
辅助函数postAsync: function (url, data) {
return $.ajax({
url: url,
data: JSON.stringify(data),
type: 'POST',
contentType: 'application/json; charset=utf-8',
dataType: 'json'
});
}
,当我要与服务器进行交互,我会做
postAsync("/mycontroler/methodname", {input: value}).done(function(){
// show success message
}).fail(function(err){
// show error message
});
然而
,我所有的Ajax请求始终处于“失败”回调结束。 我期待进入“犯错”的对象,我可以看到
status: 200
statusText: "OK"
但为什么它是错误的结束。我调试我的控制器,它就好!根本没有例外。
有什么想法吗?
确定后端是给你正确的响应?可能是那里的错误? – putvande
如果你的服务器不给你json,状态实际上是200/OK,但jQuery不能解析json,所以它失败。或者它可能是一个空的答案,自jQuery 1.9以来被认为是无效的json内容:http://jquery.com/upgrade-guide/1.9/#jquery-ajax-returning-a-json-result-of-an-空串 – Zzirconium
将响应正文中收到的输出粘贴到jsonlint.com并确保其验证。 – charlietfl