Ottieni la configurazione proxy prima di accedere a un servizio web esterno (.NET 2.0)
Domanda
Quando provo a invocare un metodo su un servizio web esterno (su Internet) mi lancia " Il server remoto ha restituito un errore: (407) Autenticazione proxy richiesta. "
Per risolvere questo problema, ho usato il seguente codice per impostare il proxy che usiamo in ufficio:
//Set the system proxy with valid server address or IP and port.
System.Net.WebProxy pry = new System.Net.WebProxy("MyHost", 8080);
//The DefaultCredentials automically get username and password.
pry.Credentials = System.Net.CredentialCache.DefaultCredentials;
System.Net.WebRequest.DefaultWebProxy = pry;
Funziona bene, ma ora ... Devo farlo "meno codificato". cercando di ottenere le informazioni dal mio sistema invece di impostarle manualmente.
Soluzione
Questo utilizzerà qualunque sia il proxy predefinito per IE, credo (non deprecato):
Services.MyService service = new Services.MyService();
service.UseDefaultCredentials = true;
service.Proxy = new System.Net.WebProxy();
service.Proxy.Credentials = service.Credentials;
Altri suggerimenti
System.Net.WebProxy.GetDefaultProxy () anche se VS avverte che è stato deprecato.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow