表单身份验证重定向导致锚定丢失

时间:2009-07-31 20:58:33

标签: c# .net asp.net forms-authentication anchor

所以这就是问题所在。

我使用Anchors作为非刷新方式来允许当前视图对象的书签。

http://myserver/showobject.aspx#objectid=10

我使用它,所以在更新对象ID时,它不会尝试在页面上刷新。

继承人。

我正在使用表单身份验证来处理对这些页面的访问。因此,当您尝试在未先登录的情况下浏览上述链接时,会将您重定向到登录页面。成功通过身份验证后, FormsAuthentication.RedirectFromLoginPage (...)即可转到您来自的页面。

除了它将#objectid = 10位中断。

我想了几个黑客(在重定向到登录页面之前设置一个cookie,然后在“RedirectFromLoginPage”完成后读取cookie并更新链接)来解决这个问题,但是想知道是否有任何问题使FormsAuthentication.RedirectFromLoginPage成为我真正希望它做的真正方法。

所以回顾一下:

感谢您提前协助,

约翰。

3 个答案:

答案 0 :(得分:2)

临时cookie是去这里的方法。在告诉服务器从哪个URL被引用时,Web浏览器不会在“#”之后发送任何内容 - 因此服务器无法捕获该信息并且知道在用户登录后使用它

答案 1 :(得分:1)

URL的那部分称为片段,服务器端不会看到它。使用插页式页面和一些javascript有很多方法,但它可能会变得混乱。

答案 2 :(得分:-2)

问题可能是你的查询字符串中的井号而不是问号吗?

我使用表单身份验证,使用

时从不会出现任何问题

page.aspx?value=x