Google 如何重定向其搜索结果?
How does Google redirect its search results?
我在 https://www.google.com
上的搜索文本框中输入了查询 java
。一个结果是https://en.wikipedia.org/wiki/Java_(programming_language)
。我通过右键单击 link 并选择 Copy Link Address
得到以下文本。
然后我把上面的link粘贴到Chrome地址栏。我使用 Developer Tools
来监控 HTTP 网络流量。
第一个 HTTP 请求是针对原始 link 的。它的状态码是200。Chrome如何为https://en.wikipedia.org/wiki/Java_(programming_language)
发出以下请求?我知道状态码为302
的HTTP响应可以让brsowers跟随link在Location
header。但是在这种情况下如何使用状态码 200
进行重定向?
重定向已完成,因为在第一个 HTTP 请求 (https://www.google.com/url?sa=t&rct=j...) 的响应中:
- 如果启用 javascript,则 window 位置会使用脚本导航到
https://en.wikipedia.org/...
。
- 如果javascript被禁用,或者客户端不支持javascript,那么
<meta http-equiv="refresh">
用于重定向到https://en.wikipedia.org/...
这是第一个 HTTP 请求的响应正文:
<script>window.googleJavaScriptRedirect=1</script>
<META name="referrer" content="origin">
<script>var n={navigateTo:function(b,a,d){if(b!=a&&b.google){if(b.google.r){b.google.r=0;b.location.href=d;a.location.replace("about:blank");}}else{a.location.replace(d);}}};n.navigateTo(window.parent,window,"https://en.wikipedia.org/wiki/Java_(programming_language)");
</script>
<noscript>
<META http-equiv="refresh" content="0;URL='https://en.wikipedia.org/wiki/Java_(programming_language)'">
</noscript>
我在 https://www.google.com
上的搜索文本框中输入了查询 java
。一个结果是https://en.wikipedia.org/wiki/Java_(programming_language)
。我通过右键单击 link 并选择 Copy Link Address
得到以下文本。
然后我把上面的link粘贴到Chrome地址栏。我使用 Developer Tools
来监控 HTTP 网络流量。
第一个 HTTP 请求是针对原始 link 的。它的状态码是200。Chrome如何为https://en.wikipedia.org/wiki/Java_(programming_language)
发出以下请求?我知道状态码为302
的HTTP响应可以让brsowers跟随link在Location
header。但是在这种情况下如何使用状态码 200
进行重定向?
重定向已完成,因为在第一个 HTTP 请求 (https://www.google.com/url?sa=t&rct=j...) 的响应中:
- 如果启用 javascript,则 window 位置会使用脚本导航到
https://en.wikipedia.org/...
。 - 如果javascript被禁用,或者客户端不支持javascript,那么
<meta http-equiv="refresh">
用于重定向到https://en.wikipedia.org/...
这是第一个 HTTP 请求的响应正文:
<script>window.googleJavaScriptRedirect=1</script>
<META name="referrer" content="origin">
<script>var n={navigateTo:function(b,a,d){if(b!=a&&b.google){if(b.google.r){b.google.r=0;b.location.href=d;a.location.replace("about:blank");}}else{a.location.replace(d);}}};n.navigateTo(window.parent,window,"https://en.wikipedia.org/wiki/Java_(programming_language)");
</script>
<noscript>
<META http-equiv="refresh" content="0;URL='https://en.wikipedia.org/wiki/Java_(programming_language)'">
</noscript>