我正在使用以下代码从网页获取加载 xml,但是我一直收到错误“远程服务器返回错误:(407)需要代理身份验证。 ”
我查看了 stackoverflow 和其他网站上的大量帖子,但无法解决问题。我们的 IT 支持部门告诉我,这可能是因为他们强制代理服务器使用 kerberos 身份验证,但正如您所见,我已将 kerberos 指定为身份验证类型。
这是我目前正在使用的代码:
IWebProxy proxy = request.Proxy;
if (proxy != null)
{
string proxyuri = proxy.GetProxy(request.RequestUri).ToString();
var cc = new CredentialCache();
cc.Add(
new Uri(proxyuri),
"Kerberos", //if we don't set it to "Kerberos" we get error 407 with ---> the function requested is not supported.
CredentialCache.DefaultNetworkCredentials);
request.UseDefaultCredentials = true;
request.Proxy = new WebProxy(proxyuri, false);
request.Proxy.Credentials = cc;
}
//set some sort of user-agent string
request.UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)";
// Create a new XmlDocument
var doc = new XmlDocument();
var stream = request.GetResponse().GetResponseStream();