如何获得 http://www.google.com 站点的重定向 url

How to get redirect url of http://www.google.com site

我试过这个简单的代码来获取重定向代码 307 但失败了。

string urlRequest = "http://www.google.com";
request = HttpWebRequest.Create(urlRequest) as HttpWebRequest;
request.AllowAutoRedirect = false;
var response = request.GetResponse();

期望响应状态代码为 307 和 AbsoluteUri =“https://www.google.com”但不是?

Google在这种情况下不会发起重定向,因为无法确定客户端是否支持https。似乎 google 检查请求的 UserAgent header 并且仅在可以确定用户代理支持 https 时才发起重定向。

string urlRequest = "http://www.google.com";

HttpWebRequest request = HttpWebRequest.CreateHttp(urlRequest);

request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0";
request.AllowAutoRedirect = false;

HttpWebResponse response = request.GetResponse() as HttpWebResponse;

MessageBox.Show(response.StatusCode.ToString());
MessageBox.Show(response.Headers["Location"]);

其他请求 header 也会影响 Google 的行为方式。