我有一个ASP.NET应用程序,并且有一个页面,其中所有服务器端处理都使用页面方法(页面上提供了脚本管理器)。 现在的问题是服务器上有多个页面方法异步处理,有些需要1~20秒,有些是在另一个成功时执行,但其中一个大约需要30分钟。 会话超时(20分钟)和执行超时(60分钟)并按预期工作。
我还有一个java脚本函数,它检查用户的空闲时间,如果用户在20分钟之前没有采取任何操作,则会出现一条警告消息,即使一个异步请求仍在后面运行,用户也会自动注销。
有没有办法检查是否有任何异步请求仍在运行?如果是,那么我将检查我的java脚本代码谁检查空闲时间。
答案 0 :(得分:0)
您可以使用JavaScript来计算当前正在运行的页面方法的数量:
var callsRunning = 0;
function callPageMethod()
{
callsRunning += 1;
PageMethods.DoSomething(onSucceed, onError);
return false;
}
function onSucceed(result)
{
callsRunning -= 1;
alert(result);
}
function onError(result)
{
callsRunning -= 1;
}
因此,您可以随时查看callsRunning > 0
是否仍在等待任何方法。