我有一个Web应用程序(.net VB代码),它利用会话变量来存储用户名(这里是登录名)和配置文件(admin / client),身份验证由asp成员资格管理。然后,应用程序依赖于加载事件上的这些会话变量。这个应用程序运行良好几年。但是,最近用户在登录并尝试加载需要其中一个变量的新页面时会抱怨偶尔出现错误消息。它最常发生在Chrome上,但也包括IE和Firefox。
遇到错误的用户需要注销并清除浏览历史记录,之后再次运行。这个错误不容易复制 - 我能够在我的机器上触发它'暴力'使用' back'按钮几次最终绊倒它 - 然后我必须清除我的浏览历史记录才能使应用程序再次运行。
可能导致这种情况发生的原因是什么?
会话设置在' login'的加载事件上带有'会话的页面("类型")="管理员"'和后续页面检查Session" Type"
的值我知道我可以使用cookie,但出于安全原因,我选择不这样做。可以使用cookie来防止这种情况吗?或者我是否需要使用membership.getuser方法来获取用户名,然后在数据库中查找值?这看起来效率不高。
想法?