1

我有一个 Windows 窗体应用程序,当我尝试从 Google 服务器返回 JSON 字符串时,它不断返回 407 代理服务器错误。我被引导相信我需要做的就是通过将 WebRequest Credentials 设置为“DefaultCredentials”或“DefaultNetworkCredentials”来正确设置安全上下文。但是,我使用的所有方法(参见主题标题)总是返回“”。

烦人的是,该应用程序在我的机器上运行、发布并通过 VS 2008 时运行良好,但是当其他用户尝试时,它会产生以下错误:

System.Net.WebException: The remote server returned an error: (407) Proxy Authentication Required.

在 System.Net.HttpWebRequest.GetResponse()

任何想法任何一个,在我秃头之前!

提前致谢

C

编辑:按要求提供一些代码。我已经尝试了以下几种变体,但似乎都不起作用。

request.Proxy.Credentials = CredentialCache.DefaultCredentials;
HttpWebRequest.Proxy.Credentials = CredentialCache.DefaultCredentials;

或字符串 url = "http://www.blah.com"; uri uri = 新的 uri(url); ICredentials 凭据 = CredentialCache.DefaultCredentials;NetworkCredential credential = credentials.GetCredential(uri, "Basic");

或者

NetworkCredential credential = CredentialCache.DefaultNetworkCredentials;

进入

request.Proxy.Credentials = CredentialCache.DefaultCredentials;

或者

request.Credentials = credential

我也试过了

.DefaultCredentials

.DefaultNetworkCredentials
4

1 回答 1

0

DefaultNetworkCredentials 返回的凭据表示应用程序正在运行的当前安全上下文的身份验证凭据。对于客户端应用程序,这些通常是 Windows 凭据(用户名、密码和域)。

运行应用程序的用户可能没有代理权限

于 2011-07-14T10:29:43.017 回答