我有一个Windows窗体应用程序,当我尝试从Google服务器返回一个JSON字符串时,它会一直返回407 Proxy Server错误。我被引导相信我需要做的就是通过将WebRequest凭据设置为“DefaultCredentials”或“DefaultNetworkCredentials”来正确设置安全上下文。但是,我使用的所有方法(见主题tittle)总是返回“”。
令人讨厌的是,在我的机器上运行,发布并通过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;
OR string url =“http://www.blah.com”; Uri uri = new Uri(url); ICredentials credentials = CredentialCache.DefaultCredentials; NetworkCredential credential = credentials.GetCredential(uri,“Basic”);
OR
NetworkCredential credential = CredentialCache.DefaultNetworkCredentials;
INTO
request.Proxy.Credentials = CredentialCache.DefaultCredentials;
OR
request.Credentials = credential
我也试过两次
.DefaultCredentials
并且
.DefaultNetworkCredentials
答案 0 :(得分:0)
DefaultNetworkCredentials返回的凭据表示运行应用程序的当前安全上下文的身份验证凭据。对于客户端应用程序,这些通常是Windows凭据(用户名,密码和域)。
运行该应用程序的用户可能没有代理权限