PRB : Erreur sur le.NET client qui utilise un service Web via un serveur proxy HTTP

Traductions disponibles Traductions disponibles
Numéro d'article: 318140 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Symptômes

Remarque : Les éléments suivants.NET Framework Class Library namespace est référencé dans cet article :

System.NET

Lorsque vous utilisez un.NET client pour consommer un service Web via un serveur proxy HTTP, vous pouvez recevoir le message d'erreur suivant :
La connexion sous-jacente a été fermée : le nom distant n'a pas pu être résolu.

Cause

Il existe un serveur proxy HTTP entre le service Web et le .NET cliente et les paramètres de proxy appropriés n'ont pas été configurés.

Résolution

Pour résoudre ce problème, fournir le bon proxy paramètres de configuration pour le.NET cliente.

Plus d'informations

Voici les paramètres par défaut dans le Fichier machine.config :

<configuration>
   <system.net>
      <defaultProxy>
         <proxy
            usesystemdefault = "true"
         />
      </defaultProxy>
   </system.net>
</configuration>

				
Si les paramètres par défaut ne détectent pas automatiquement le serveur proxy paramètres, usessystemdefault la valeur false et ensuite explicitement désigner le serveur proxy. Pour désigner explicitement le serveur proxy, utilisez soit le fichier Machine.config ou Web.config de fichiers, ou spécifiez le serveur par programme.

Pour spécifier le serveur proxy, définir les paramètres du fichier Machine.config ou Web.config en tant que suit :

<configuration>
   <system.net>
      <defaultProxy>
         <proxy
            usesystemdefault = "false"
            proxyaddress="http://proxyserver"
            bypassonlocal="true"
         />
      </defaultProxy>
   </system.net>
</configuration>

				
Pour modifier les paramètres par programme à l'aide d'un objet WebProxy , utilisez l'exemple de code suivant :

Using System.Net;

com.someserver.somewebservice.someclass MyWebServiceClass = new com.someserver.somewebservice.someclass();

IWebProxy proxyObject = new WebProxy("http://myproxyserver:80", true);
MyWebServiceClass.Proxy = proxyObject;

MyWebServiceClass.MyWebMethod();

				


Serveurs proxy nécessitant une authentification NTLM

Pour définir l'authentification NTML pour le serveur proxy, utilisez l'exemple de code suivant :
Using System.Net;

WebProxy myProxy = new WebProxy("http://proxyserver:port",true); myProxy.Credentials = CredentialCache.DefaultCredentials; FindServiceSoap myFindService = new FindServiceSoap(); myFindService.Proxy = myProxy;
Vous pouvez également utiliser le proxy à l'échelle du système comme valeur par défaut. Pour ce faire, utilisez les paramètres suivants dans le fichier de configuration :
<configuration> 
   <system.net> 
     <defaultProxy> 
        <proxy 
           proxyaddress = "http://proxyserver:80" 
           bypassonlocal = "true" /> 
     </defaultProxy> 
  </system.net> 
</configuration>

Références

Pour plus d'informations, consultez le développeur de Microsoft suivant Sites Web de Network (MSDN) :
Interface IWebProxy

<defaultProxy>Élément</defaultProxy>
Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
307220Comment faire pour configurer un client de service Web XML à l'aide du.NET Framework pour travailler avec un serveur proxy

Propriétés

Numéro d'article: 318140 - Dernière mise à jour: lundi 18 juin 2012 - Version: 1.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
Mots-clés : 
kbprb kbmt KB318140 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 318140
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com