C# 407 需要代理身份验证

use*_*359 4 c# c#-4.0

我想向资源发出请求(该资源位于代理后面)。我也有代理地址和端口。我试过NetworkCredentialn没有成功,CacheCredentials没有成功。WebException 是:

ProtocolError
远程服务器返回错误:(407) 需要代理验证

我总是在这一行出错:

WebResponse response = request.GetResponse();
Run Code Online (Sandbox Code Playgroud)

我已经这样做了: Visual Studio 2015 中的包管理器“407(需要代理身份验证)”

我试图配置我的 App.config 文件

WebResponse response = request.GetResponse();
Run Code Online (Sandbox Code Playgroud)

A. *_*esa 7

在我们的公司网络中,我们通常使用以下代码:

        WebProxy proxy = new WebProxy("http://your.proxy.server:8080", true);
        proxy.Credentials = new NetworkCredential("user", "password");
        WebRequest.DefaultWebProxy = proxy;
Run Code Online (Sandbox Code Playgroud)

这个想法是你将此代码放在程序开头的某个地方(或者如果你在 IIS 上,则在应用程序启动中),然后每个请求都将采用默认代理配置。

不需要更改 web.config。AFAICT,在 web.config 中,您无法设置凭据。

根据我的经验,它也适用于 Web 服务和 WCF 通信。