3

可能重复:
如何从服务器端获取 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 ?

4

3 回答 3

5

您需要对其进行 urlencode。

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

于 2012-08-21T10:43:15.380 回答
2

这是不可能的,因为 URL 片段(后面的位#)没有从浏览器发送到服务器。

于 2012-08-21T10:41:30.193 回答
0

在形成/解析该部分时使用HttpUtility.UrlEncode和。HttpUtility.UrlDecode

于 2012-08-21T10:43:13.120 回答