代码改变世界

c#获得HTTP header中location的方法

2013-03-20 23:37  爱车龟速兔  阅读(1433)  评论(0编辑  收藏  举报

用HttpWebRequest获取网页信息时,页面可能会使用header跳转到新地址。

但是有时候不希望调整,想获得跳转后的地址,然后做些判断来决定是否跳转。

HttpWebRequest对象有个AllowAutoRedirect属性,指是否自动跳转到新地址,默认为true,改成false即可。

返回对象HttpWebResponse的header中location即为新地址。

 

HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);

req.AllowAutoRedirect = false;
HttpWebResponse response = (HttpWebResponse)req.GetResponse();

label_reponse.Text = response.Headers["location"];