我们以前在应用程序上启用了无灶会话。我们已经禁用了它,并使用了会话cookie,但是我们有一个问题。在url中将会话ID作为书签的用户仍然能够导航到站点,其中包含URL中的会话id。我已经设置它不能重新生成过期的会话,但它仍然允许它。此外,它还创建了一个会话cookie,然后我们将得到随机的会话丢失。我想出了一些不可靠的解决方案,比如使用URL删除它,重写并通过javascript将其去掉,但这似乎很糟糕。我错过了什么能帮上忙的东西吗?这并不重要,但我将补充说,我们使用的是状态服务器。
发布于 2017-07-19 14:02:02
URL重写是一个很好的解决方案。
但是,如果您希望用户更新他们的书签(这样您最终可以取消URL重写),您可能会考虑让您的URL重写将它们发送到一个页面,告诉他们这样做:
然后给他们通常的登录选项等等。
发布于 2020-03-04 19:30:52
对于其他寻找不需要用户更新书签的解决方案的人,我可以在我的Global.asax Application_BeginRequest中使用以下内容
void Application_BeginRequest(object sender, EventArgs e) {
if (CookielessValuesExist()) {
Response.Redirect(Request.Url.OriginalString, true);
}
}
private bool CookielessValuesExist() {
string cookieless = Request.Params["HTTP_ASPFILTERSESSIONID"];
if (string.IsNullOrWhiteSpace(cookieless)) {
return false;
}
return true;
}https://stackoverflow.com/questions/45189931
复制相似问题