我花了一段时间搜索本网站上的文章,找到我正在尝试完成的内容,但到目前为止没有运气。我正在客户端应用程序中执行Web请求,并且我想确保它通过代理工作。我将Fiddler2设置为代理服务器进行测试,并迫使它需要身份验证。.net通过代理网络请求,自动检测凭据
我已经基本上是想出如何让代理使用:
Dim proxy As IWebProxy = WebRequest.GetSystemWebProxy()
webService.Proxy = proxy
我也试图通过
webService.Proxy.Credentials = System.Net.CredentialCache.DefaultCredentials
,并得到适当的凭据到代理加入这在配置部分下的app.config:
<system.net>
<defaultProxy useDefaultCredentials="true" />
</system.net>
这两种情况我都得到相同的web异常:
The request failed with HTTP status 407: Proxy Auth Required.
Fiddler2的代理有1名和1密码,如果我把这些作为凭证以编程方式请求,该请求将成功进行身份验证。但是,是否有一个原因,即它没有抓取来自IE的证书,就像抓取代理信息一样?
Fiddler的代理是如何工作的例外?使用Windows身份验证的普通代理是否可以正常使用我尝试获取凭据的方式,并且有任何方法可以轻松测试吗?
首先我想WebRequest使用IE代理是默认的。不是吗?!你有没有尝试过,而没有自己定义代理? (并在Internet选项中使用正确的代理设置) –
是的,我也试过,并得到了相同的结果。我可以为用户添加一个表单,以便为我输入该信息,但对我而言,我可以通过编程方式获得该信息。 –