// don't allow redirects, they are allowed by default so we're going to override
myRequest.AllowAutoRedirect = false;
// send the request
HttpWebResponse response = myRequest.GetResponse();
// check the header for a Location value
if( response.Headers["Location"] == null )
{
// null means no redirect
}
else
{
// anything non null means we got a redirect
}
4 回答
这很容易做到
假设您已经创建了一个名为myRequest的HttpWebRequest
请原谅任何编译错误我没有VS就在我面前,但我过去曾用过这个来检查重定向 .
在
HttpWebRequest
上,您可以将AllowAutoRedirect
设置为false
以自行处理重定向 .此外,对于只需要新位置的人,
HttpResponseMessage
具有RequestMessage
属性 . 有时它可能很有用,因为WebClient
不支持在设置后更改AllowAutoRedirect
属性 .HttpWebRequest
有一个属性AllowAutoRedirect,您可以将其设置为false(it is always true for WebClient),然后获取Location HTTP标头 .