我正在尝试使用来自C#控制台应用程序的HttpWebRequest从URL下载一些数据。在浏览器和邮递员中,它工作正常但不是来自应用程序 - 它不返回预期的数据。使用Fiddler,我检查了请求,并且我发现最初发送的请求实际上被重定向三次(我在最后的Http 200响应之前在Fiddler中看到三个http 302)并最终返回数据。但是,从我的C#控制台应用程序中我只得到最终响应 - HttpWebResponse状态总是给出“OK”(200)。
我在提琴手中注意到http 302返回的cookie很少,后续请求会在其标题中发送cookie。这在浏览器/邮递员中正确处理,但我无法在我的应用程序中执行此操作。任何帮助将受到高度赞赏。
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
答案 0 :(得分:2)
我相信您正在寻找AllowAutoRedirect
课程的HttpWebRequest
属性。将其设置为false
应该做的事情:
HttpWebRequest request = new HttpWebRequest(someUri);
request.AllowAutoRedirect = false;
您可以阅读有关HttpWebRequest
here。