我在MVC4(.NET)网站中有单页面应用程序。 某些方法对特定角色具有权限。经过一段时间后,登录用户收到错误“此请求的授权已被拒绝”
当用户登录到系统(带饼干)
FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
一切工作正常,但如果用户离开网站开通,一段时间后回来(至少30分钟,我认为)而无需刷新(这是一个单页的应用程序,因此无需刷新),然后尝试做一些网站 - 用户得到一个错误
“授权已被拒绝了这个请求。”
刷新后(F5) - 一切恢复正常。
我想也许会议结束或类似的东西。我该如何解决它?
在我的web.config我有这行:
<authentication mode="Forms">
<forms loginUrl="~/" timeout="2880" slidingExpiration="true" cookieless="UseCookies" />
</authentication>
默认的超时时间为30分钟,它在你的情况属实。您可以增加超时时间或寻找其他解决方案,而不是表单身份验证。将Cookie保留在本地存储和某处。在提出请求的同时(我相信你使用的是客户端ajax),那么你可以追加cookie – qamar 2015-01-21 05:15:23
确实我使用客户端ajax。我怎样才能增加30分钟?你有第二个建议的教程吗? – TamarG 2015-01-21 05:18:49
请参阅答案 – qamar 2015-01-21 05:20:21