2013-03-23 43 views
-2

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

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

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

+0

你不觉得它是查询字符串pasing'q'参数..?如果你已经知道那么你想知道什么..? – alwaysLearn 2013-03-23 17:18:28

+0

它看起来是一个空字符串,作为'q'的值传递,并且正斜杠作为散列字符串传递。 – 2013-03-23 17:21:20

+0

它是q参数的值。 – alwaysLearn 2013-03-23 17:21:24

回答

3

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

不久:/?q=是查询字符串中的一个空变量,​​,之后的所有内容都是要处理的JavaScript数据。哈希字符串中的斜线(es)使它看起来像它也是目录结构的一部分。

1

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

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

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