传递URL与重定向的哈希值
可能重复:
如何从服务器端获取Url Hash(#)
我在从变量中获取哈希值时遇到了一些麻烦。
我正在使用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
对象上获得哈希值。
如何 使用哈希部分将用户转发到正确的URL?
你需要对它进行urlencode。
尝试: http://localhost:1357/none/Account/LogOn?returnUrl=a/b/c%23day-22
这是不可能的,因为URL片段( #
之后的位)不是从浏览器发送到服务器的。
在形成/解析该部分时使用HttpUtility.UrlEncode
和HttpUtility.UrlDecode
。