Webservice SocketException - Разрывы только на одном приложении - PullRequest
1 голос
/ 18 сентября 2009

У меня есть несколько приложений, которые используют одну веб-службу, которая находится на том же сервере, что и приложения.

Почему бы только у одного из приложений возникла проблема при подключении к веб-службе? И есть ли способ, которым я могу лучше точно диагностировать, в чем проблема с соединением ?

Он даже не подключится к веб-сервису, на котором размещено само приложение

Я попытался запустить его с моего локального компьютера, и он отлично работает (обновил веб-ссылку и строку подключения, указав на сервер печени), что должно исключить проблему с самим кодом.

Я попытался настроить другой виртуальный каталог, чтобы он указывал на приложение; а затем скопировать приложение entrie в другое место на том же сервере и настроить его там. Не повезло.

[SocketException (0x274c): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond xx.xx.xx.xx:80]
   System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress) +239
   System.Net.Sockets.Socket.InternalConnect(EndPoint remoteEP) +35
   System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Int32 timeout, Exception& exception) +224

[WebException: Unable to connect to the remote server]
   System.Net.HttpWebRequest.GetRequestStream() +5321194
   System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) +103
...

1 Ответ

1 голос
/ 18 сентября 2009

Нашел ... прокси был причиной проблемы, и это единственное приложение, где я указываю прокси, отличный от значения по умолчанию:

Поскольку прокси мне нужен только локально, я отключил его в живом web.config с enabled = "false"

  <defaultProxy enabled="false">
    <proxy
      autoDetect="False"
      bypassonlocal="True"
      scriptLocation="http://www.proxy.something"
      proxyaddress="http://proxy.com" />
  </defaultProxy>
...