簡體   English   中英

遠程服務器返回錯誤:(407)需要代理身份驗證

[英]Remote Server returned an error: (407) Proxy Authentication Required

我試圖從我的winforms應用程序打開一個URL,我得到“407 Proxy Authentication Required”錯誤。 我能夠在我的機器上打開部署在IIS上的示例應用程序。 但如果我嘗試訪問任何其他URL獲取此錯誤。 這是源代碼。 請給我任何建議。

string url = "http://google.co.in";


HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebRequest.DefaultWebProxy.Credentials = CredentialCache.DefaultCredentials;
request.Method = "POST";

HttpWebResponse response = (HttpWebResponse)request.GetResponse();

Console.WriteLine(response.StatusDescription);

Stream dataStream = response.GetResponseStream();

StreamReader reader = new StreamReader(dataStream);

string responseFromServer = reader.ReadToEnd();

Console.WriteLine(responseFromServer);
MessageBox.Show(responseFromServer);

reader.Close();
dataStream.Close();
response.Close();

這表示系統設置中的代理集要求您在能夠使用它之前登錄。 如果它在您的瀏覽器中有效,那么您最有可能在過去這樣做過。 在系統的網絡設置中禁用代理,或添加相應的標頭以對代理進行身份驗證。

試試這個,它對我有用

string url = "http://google.co.in"; 
IWebProxy proxy = new WebProxy("your proxy server address", port number ); // port number is of type integer 
        proxy.Credentials = new NetworkCredential("your user name", "your password");

        try
        {
                WebClient client = new WebClient();
                client.Proxy = proxy;

                string resp = client.DownloadString(url);
                // more processing code 
                }
            }
        }
        catch (WebException ex)
        {
            MessageBox.Show(ex.ToString()); 
        }
    }
IWebProxy proxy = new WebProxy("proxy address", port number); 
proxy.Credentials = new NetworkCredential("username", "password");

using (var webClient = new System.Net.WebClient())
{
    webClient.Proxy = proxy;

    webClient.DownloadString("url");

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM