Url 在'之后查询#';在里面https://www.google.co.in/#q=better+航班+;搜索
URL遵循以下方案Url 在'之后查询#';在里面https://www.google.co.in/#q=better+航班+;搜索,url,google-search,uri-fragment,Url,Google Search,Uri Fragment,URL遵循以下方案 scheme://domain:port/path?query_string#fragment_id 但是搜索字符串 更好的航班搜索 生成以下url https://www.google.co.in/#q=better+flight+search 根据url方案,#后面是片段。如果我错了,请纠正我,但是片段没有发送到服务器,那么google如何显示搜索结果。正如您所意识到的,URL的片段部分不会在HTTP请求中发送到服务器。相反,浏览器在本地使用它来标记文档中的位置。一些
scheme://domain:port/path?query_string#fragment_id
但是搜索字符串
更好的航班搜索
生成以下url
https://www.google.co.in/#q=better+flight+search
根据url方案,
#
后面是片段。如果我错了,请纠正我,但是片段没有发送到服务器,那么google如何显示搜索结果。正如您所意识到的,URL的片段部分不会在HTTP请求中发送到服务器。相反,浏览器在本地使用它来标记文档中的位置。一些客户端框架利用这一事实,将片段用作辅助查询字符串
例如,在您的Google示例中,在Google页面上进行搜索会导致页面导航到类似#q=better+flight+search
的片段。浏览器会看到更改并通知页面的javascript URL已更改。因为URL减去片段是相同的,所以浏览器不会向服务器执行请求。在本例中,页面的javascript会看到片段的变化,并使用该变化执行Ajax查询以获得搜索结果。这样做可以让Google在不加载页面的情况下为您提供搜索结果,这对服务器和客户端(服务器,因为它不必处理服务另一个页面的开销;客户端,因为加载时间大大减少)来说都是一个巨大的胜利
对于相关的
#代码>查看。非常有趣!我确认了这一点:如果禁用JavaScript,那么https://www.google.co.in/#q=better+航班+搜索
将转到与https://www.google.co.in/
@Eric如果你详细阐述并用简单的语言表达你的答案,对所有人都会更有用。@GauravAgarwal对答案进行了扩展。希望有帮助。