gpt4 book ai didi

c# - ajax 调用持续运行

转载 作者:行者123 更新时间:2023-12-01 02:44:14 25 4
gpt4 key购买 nike

我正在使用ajax来检查我的sql数据库中是否没有存储新的警报。我将其设置为每 30 秒运行一次,但它继续调用每秒检查数据库的函数。这是我的代码。

这是 View 中的代码。 “_Tasks”是我的部分 View ,它将是要更新的 View 。我没有为成功返回做任何事情,因为它从未达到该代码。

  @Html.Action("_Tasks")
<script type="text/javascript">
(function poll() {

$.ajax({
type: 'GET',
cache: false,
url: '@Url.Action("TasksRefresh")',
dataType: "json",
complete: poll,
timeout: 30000,
success: function (data) {
if (data.success == true)
alert("Hello");

}
});
})();
</script>

这是在 Controller 中

public JsonResult TasksRefresh()
{
var alerts = getAlerts();
var cache = HttpRuntime.Cache["Tasks"];
if ( cache == alerts)
{
return Json(new
{
success = false,
});
}
else
{
return Json(new
{
success = true,
// View = this.Re
});
}

}

最佳答案

试试这个:

(function poll() {
$.ajax({
type: 'GET',
cache: false,
url: '@Url.Action("TasksRefresh")',
dataType: "json",
complete: function () { setTimeout(poll, 30000); }, // Changed, call poll again when 30s has pasted
timeout: 30000, // This just says it fails if the request takes more than 30s
success: function (data) {
if (data.success == true)
alert("Hello");

}
});
})();

关于c# - ajax 调用持续运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15927158/

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