【问题标题】:How can I get the whole requested url in C#? [duplicate]如何在 C# 中获取整个请求的 url? [复制]
【发布时间】:2012-02-08 15:18:29
【问题描述】:

可能重复:
How to get Url Hash (#) from server side
c# get complete URL with “#”

如果我用

调用页面http://www.mywebsite.it?param=1
Request.Url 

我明白了。但是在http://www.mywebsite.it?param=1#1234

我无法获得完整的地址。 #1234 被忽略。我怎样才能得到它?

【问题讨论】:

标签: c# .net request


【解决方案1】:

您无法获取以# 开头的部分,因为这通常不会传输到服务器。

它只在客户端处理。

因此,您可以使用 javascript 将其提取并传输到服务器(XHR、隐藏字段或任何其他技术)。

【讨论】:

    【解决方案2】:

    据我所知,这是不可能的。请参阅以下 SO 问题:

    How to get Url Hash (#) from server side

    那里的答案可能会为您提供一个不错的小解决方法,但是,包括您执行 POST 时的哈希值。

    【讨论】:

      【解决方案3】:

      锚点是客户端功能。 URL 的锚点组件不会(也不应该)传输到服务器。

      【讨论】:

        【解决方案4】:

        请阅读此内容以进行澄清: https://www.rfc-editor.org/rfc/rfc1738

        "字符'#'是不安全的,应该 总是被编码,因为它用于万维网和其他 系统将 URL 与可能的片段/锚标识符分隔 跟着它。”

        【讨论】:

          猜你喜欢
          • 2013-06-08
          • 2015-10-28
          • 1970-01-01
          • 1970-01-01
          • 2018-10-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-03-29
          相关资源
          最近更新 更多