没有代理时使用WebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultNetworkCredentials有缺点吗?

时间:2016-09-22 16:22:31

标签: c# .net security http proxy

我遇到运行我的.NET应用程序的用户可能在代理服务器后面的情况。

我发现使用

WebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultNetworkCredentials
无论是否在操作系统局域网(LAN)设置对话框中指定了代理,程序开头的

始终允许请求工作。

如果没有这一行,当在代理后面时,我会在提出请求时获得407代理身份验证。

在我的程序中总是执行此行是否有任何缺点?在大多数情况下,用户不会通过代理,因此是否存在大量额外开销,例如代码或线路,或者在代理不存在时使用此代码的任何其他缺点?

1 个答案:

答案 0 :(得分:0)

来自the documentation

  

Credentials属性是ICredentials实例,其中包含要发送到代理服务器以响应HTTP 407(代理授权)状态代码的授权凭据。

由于只有代理服务器后面的用户才会收到407,其他用户不会受到影响。