在.NET中使用httpWebRequest时"尝试了太多自动重定向"错误消息

too*_*leb 19 .net vb.net webrequest httpwebrequest

我正在尝试使用vb.net中的webrequest类请求" http://www.google.com/?q=random " 这样的页面.我们在防火墙后面,所以我们必须验证我们的请求.我通过添加我的凭据已经通过了身份验证部分.但是一旦它起作用,它似乎进入了一个重定向循环.

有没有人有想法,评论,建议为什么这是?还有其他人遇到过这个问题吗?

Dim loHttp As HttpWebRequest =  CType(WebRequest.Create(_url), HttpWebRequest)
loHttp.Timeout = 10000
loHttp.Method = "GET"
loHttp.KeepAlive = True
loHttp.AllowAutoRedirect = True
loHttp.PreAuthenticate = True
Dim _cred1 As NetworkCredential = ... //this is setup
//snip out this stuff
loHttp.Credentials = _cc
loWebResponse = loHttp.GetResponse()
Run Code Online (Sandbox Code Playgroud)

Dar*_*ten 43

确保您有一个cookie容器设置.

CookieContainer cookieContainer = new CookieContainer();
loHttp.CookieContainer = cookieContainer;
Run Code Online (Sandbox Code Playgroud)

您可能没有保存cookie并陷入重定向循环.


小智 8

loHttp.AllowAutoRedirect = true
Run Code Online (Sandbox Code Playgroud)

而不是这个,你必须使用

loHttp.AllowAutoRedirect = False
Run Code Online (Sandbox Code Playgroud)

避免错误错误

"太多的自动重定向被瞄准"