gpt4 book ai didi

ajax - MVC 4 $Ajax JSON 请求返回状态 0,状态文本 : "error"

转载 作者:行者123 更新时间:2023-12-01 22:54:41 25 4
gpt4 key购买 nike

我正在尝试使用 jQuery $.ajax 每 5 秒更新一次我的页面上的值,这段代码以前可以正常工作,但在部署到生产服务器后,它似乎随机失败。在某些页面上它可以工作,而在其他页面上如果失败并显示错误:状态 0,状态文本:“错误”。

任何人都可以在代码/标记中发现任何用词不当的错误吗?

我用它每 5 秒调用一次我的方法:

setInterval(function () {
updateMessages();
}, 5000);

updateMessages 看起来像这样:
function updateMessages() {
$.ajax({
beforeSend: function () { },
complete: function () { },
type: "GET",
url: '@Url.Action("GetUnreadMessagesJson", "Message", new { Area = "" })',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (result) {
var newUnreadMessages = result.UnreadMsgCount;
},
error: function (rsult) {
console.log(rsult);
}
});
}

我在 MVC Controller 中的服务器代码(操作)如下所示:
public ActionResult GetUnreadMessagesJson() {

int unreadMessages = 0;
try {
unreadMessages = messageService.GetUnreadMessageCount(WebSecurity.CurrentUserId);
}
catch (Exception) {
throw;
}
return Json(new {
UnreadMsgCount = unreadMessages
//,UnreadMessages = unreadMessages
}, JsonRequestBehavior.AllowGet);
}

当我使用 Fiddler2 分析本地机器上的请求时,我在响应中看到了这一点:

HTTP/1.1 200 OK Cache-Control: private Content-Type: application/json; charset=utf-8 Server: Microsoft-IIS/7.5 X-AspNetMvc-Version: 4.0 X-AspNet-Version: 4.0.30319 X-Powered-By: ASP.NET Date: Wed, 31 Jul 2013 17:38:50 GMT Content-Length: 20



{"UnreadMsgCount":3}

这看起来不错,也是我所期望的,但是当网站上线时我从未看到过这个请求。 Fiddler2 从不显示任何传出的 Ajax 请求,谷歌浏览器的控制台显示:

Object {readyState: 0, getResponseHeader: function, getAllResponseHeaders: function, setRequestHeader: function, overrideMimeType: function…}



里面有 status:0 和 statusText: "error"。而已。

如果我的代码没有任何问题,我到底该如何调查这个问题?有没有人见过这个?

编辑

在使用多个浏览器(包括 IE、Firefox 和 Safari)测试此问题后,该问题似乎仅限于 Google Chrome。我已提交错误报告 here并将用我得到的任何回复更新这篇文章。

谢谢,

最佳答案

显式设置 text/json 如下

 return Json(new {
UnreadMsgCount = unreadMessages
//,UnreadMessages = unreadMessages
},
"text/json",
JsonRequestBehavior.AllowGet);

关于ajax - MVC 4 $Ajax JSON 请求返回状态 0,状态文本 : "error",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17978023/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com