我正在使用
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
//myHttpWebResponse.StatusCode
为此我收到200但实际状态代码是301-> 302-> 200 http://brita.com/
请告诉我。代码中是否有任何错误。
提前致谢。
答案 0 :(得分:1)
这是因为HttpWebRequest
会自动跟随重定向,只会提供最后一个状态代码。如果您不想要,可以将AllowAutoRedirect
属性设置为false:
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
myHttpWebRequest.AllowAutoRedirect = false;
HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
//myHttpWebResponse.StatusCode
请注意,它会在第一次请求后停止,但您必须手动创建新请求以跟进重定向。