Obtenir la configuration du proxy avant d'accéder à un service Web externe (.NET 2.0)
Question
Lorsque j'essaie d'appeler une méthode sur un service Web externe (via Internet), cela me renvoie "Le serveur distant a renvoyé une erreur: (407) Authentification du proxy requise."
Pour résoudre ce problème, j'ai utilisé le code suivant pour définir le proxy que nous utilisons au bureau:
//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;
Cela fonctionne bien, mais maintenant ... je dois le faire "moins harcodé". essayer d'obtenir les informations de mon système au lieu de les définir manuellement.
La solution
Ceci utilisera quel que soit le proxy par défaut pour IE Je crois (pas obsolète):
Services.MyService service = new Services.MyService();
service.UseDefaultCredentials = true;
service.Proxy = new System.Net.WebProxy();
service.Proxy.Credentials = service.Credentials;
Autres conseils
System.Net.WebProxy.GetDefaultProxy () bien que VS le prévienne de son obsolète.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow