通过URL与哈希值重定向[复制](Pass URL's with hash value fo

2019-09-21 09:37发布

可能重复:
如何从服务器端获取地址散列(#)

我遇到一些麻烦得到一个变量的散列值。

我使用的默认操作AccountController

[HttpPost]
public ActionResult LogOn(LogOnModel model, string returnUrl) { ... }

但如果我把这块链接:

http://localhost:1357/none/Account/LogOn?returnUrl=a/b/c#day-22

我永远无法赶上#day-22

下面是登录后断点:

我从来没有得到的散列值HttpContext.Request.Url对象。

我能做些什么 ,以用户期望与散列部正确的网址是什么?

Answer 1:

你需要进行urlencode它。

尝试: http://localhost:1357/none/Account/LogOn?returnUrl=a/b/c%23day-22



Answer 2:

因为URL片段(在后位,这是不可能# )不从浏览器向服务器发送。



Answer 3:

使用HttpUtility.UrlEncodeHttpUtility.UrlDecode同时形成/解决的那部分。



文章来源: Pass URL's with hash value for redirection [duplicate]