向服务器发出请求时,在代码中会抛出401 Unauthorized异常。但是,在网络跟踪中,我可以看到服务器实际上返回302状态。
我的代码很简单,我有一个Authorization Basic标头并创建这样的连接。
try
{
using (HttpWebResponse remoteResp = (HttpWebResponse)httpReq.GetResponse())
{
//do stuff
}
}
catch (Exception e)
{
//401 here instead of 302
}
在我的代码中获取302时我缺少什么?
答案 0 :(得分:3)
默认情况下,HttpWebRequest在返回结果之前遵循重定向。您可以按如下方式关闭此行为:
httpReq.AllowAutoRedirect = false;
如果您想允许特定数量的重定向,但不能更多,那么您可以设置MaximumAutomaticRedirections
属性,默认为50。