【发布时间】:2017-10-04 14:56:22
【问题描述】:
最近有人建议我尝试使用心跳来解决我项目中的问题。因为我是 javascript 新手,所以在继续之前我试图实现对 this question 的第二个答案,但即使这样似乎也不起作用,我不明白为什么。这是涉及的三个文件:
HTML (Heart.cshtml)
<head>
<script type="text/javascript" src="~/Scripts/heartBeat.js"></script>
</head>
<body>
<script type="text/javascript">
LaunchHeartBeat('@Url.Action("KeepSessionAlive", "Auxiliary")');
</script>
</body>
Javascript (heartBeat.js)
var isSuccess = false;
function LaunchHeartBeat(actionUrl) {
setInterval(function() {
$.ajax({
type: "POST",
url: actionUrl,
success: function () { isSuccess = true; }
});
}, 2000);
}
控制器(AuxiliaryController.cs)
[HttpPost]
public JsonResult KeepSessionAlive()
{
System.Diagnostics.Debug.WriteLine("This is a heart beat");
return new JsonResult { Data = "success" };
}
抱歉(我相信)这个简单的问题。我会在评论中询问,但我还没有足够的声誉,所以我不知道该怎么做。
编辑:我在我的代码中进行了一些编辑,以按照第一个答案的建议进行一些更正/简化。它没有解决我的问题,但现在代码更好了。我还从 HTML 文件中删除了一些不必要的行(这不影响问题,但现在代码更清晰,一目了然)。
【问题讨论】:
-
与往常一样,如果有人有任何理由投反对票或不赞成,我将不胜感激。
标签: javascript asp.net-mvc web-services design-patterns