【问题标题】:/?q=#/ in URL Query String? [duplicate]/?q=#/ 在 URL 查询字符串中? [复制]
【发布时间】:2013-03-13 10:51:48
【问题描述】:

/?q=#/在查询字符串中,有时我在facebook和twitter的URL中看到,它是什么,为什么使用它?

请详细说明。我大部分时间在谷歌查询它,但没有找到满意的结果。

我认为它用于基于 Ajax 的框架中。

【问题讨论】:

  • 你不认为这是查询字符串传递'q'参数..吗?如果您已经知道,那么您想知道什么..?
  • 它看起来是一个空字符串作为q 的值传递,并且正斜杠作为哈希字符串传递。
  • 是q参数的值。
  • 就 facebook 而言,它可能与谷歌索引有关 -> developers.google.com/webmasters/ajax-crawling/docs/…
  • 以及它是什么www.xyz.com/#/en/any.html

标签: php javascript url


【解决方案1】:

用于在不完全重新加载页面的情况下更新页面的 URL。 /?q= 只是查询字符串中的一个空变量。但是,# 之后的所有内容实际上都在 URL 的哈希部分中。最初用于将页面自动滚动到锚点 (<a name="blah">)。它可以通过 JavaScript 访问,并且因为它不会重新加载页面,所以它非常适合在复制粘贴到 URL 框时工作的 URL,当您在页面上执行操作时更改,但仍然保持所有内容加载。

简而言之:/?q= 是查询字符串中的一个空变量,#/ 以及之后的所有内容都是 JavaScript 要处理的数据。哈希字符串中的斜杠使它看起来也是目录结构的一部分。

【讨论】:

    【解决方案2】:

    RFC 3986 的第 3 部分可能会有所帮助。

    /?q= 是一个查询字符串,其中名为q 的参数为空白/空。

    # 之后的所有内容都称为片段。有时它用于跳转到页面上的书签,但通常它只是浏览器中运行的 Javascript 可以使用的一些数据。如果您更改 URL 中# 之后的部分,您的页面不会重新加载,但您的浏览器中的 Javascript 可以对其做出反应。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-18
      • 2012-01-23
      • 2014-05-30
      • 2012-03-27
      • 1970-01-01
      • 2011-08-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多