【发布时间】:2011-04-22 02:46:42
【问题描述】:
我有一个处理程序,像这样,使用 IRequiresSessionState:
public class MyHandler : IHttpHandler, IRequiresSessionState
{
// code
}
在代码中,我可以读取和设置会话值。我还检查确保调用者已登录。一切正常。
该网站使用表单身份验证,所以在 web.config 中,我有这个:
<authentication mode="Forms">
<forms loginUrl="Login.aspx" timeout="10" slidingExpiration="true"></forms>
</authentication>
问题是从客户端到服务器代码MyHandler 的 AJAX 调用不会延长会话的生命周期!
因此,即使用户正忙于从服务器发送和接收数据,他们也会在最后一次完整页面加载后 10 分钟超时。
在处理程序中,我尝试专门更改一个值是每次调用的会话,但即使这样也不会延长超时时间。
有什么建议吗?
【问题讨论】:
标签: asp.net session httphandler session-state ashx