PRB: Erro no.NET cliente que consome um serviço da Web por meio de um servidor proxy HTTP

Traduções de Artigos Traduções de Artigos
Artigo: 318140 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Observação A seguir.NET Framework Class Library namespace é mencionado neste artigo:

System.NET

Quando você usa um.NET cliente consumir um serviço Web através de um servidor proxy HTTP, você pode receber a seguinte mensagem de erro:
A conexão subjacente foi fechada: O nome remoto não pôde ser resolvido.

Causa

Existe um servidor proxy HTTP entre o serviço da Web e o .NET cliente e as configurações de proxy correto não foi configurado.

Resolução

Para resolver esse problema, fornecer o proxy adequado as configurações para o.NET cliente.

Mais Informação

A seguir estão as configurações padrão do Arquivo Machine. config:

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

				
Se as configurações padrão não detectar automaticamente o servidor proxy configurações, defina usessystemdefault como false e designar explicitamente o servidor proxy. Para designar explicitamente o servidor proxy, use tanto o Machine. config ou Web. config de arquivo ou especificar o servidor programaticamente.

Para especificar servidor proxy, defina as configurações do arquivo Machine. config ou Web. config como a seguir:

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

				
Para alterar programaticamente as configurações usando um objeto WebProxy , use o exemplo de código a seguir:

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();

				


Servidores proxy que exigem a autenticação NTLM

Definir a autenticação NTML para o servidor proxy, use o exemplo de código a seguir:
Using System.Net;

WebProxy myProxy = new WebProxy("http://proxyserver:port",true); myProxy.Credentials = CredentialCache.DefaultCredentials; FindServiceSoap myFindService = new FindServiceSoap(); myFindService.Proxy = myProxy;
Você também pode usar o proxy de todo o sistema como padrão. Para fazer isso, use as seguintes configurações no arquivo de configuração:
<configuration> 
   <system.net> 
     <defaultProxy> 
        <proxy 
           proxyaddress = "http://proxyserver:80" 
           bypassonlocal = "true" /> 
     </defaultProxy> 
  </system.net> 
</configuration>

Referências

Para obter mais informações, consulte o seguinte Microsoft Developer Sites de Network (MSDN):
Interface IWebProxy

<defaultProxy>Elemento</defaultProxy>
Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
307220Como configurar um cliente de serviço XML da Web usando o.NET Framework para trabalhar com um servidor proxy

Propriedades

Artigo: 318140 - Última revisão: 18 de junho de 2012 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
Palavras-chave: 
kbprb kbmt KB318140 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 318140

Submeter comentários

 

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