대상 시스템이 연결을 적극적으로 거부하여 연결을 설정할 수 없게 됩니다.
<p>웹 서비스에 HttpWebRequest를 수행할 때 가끔 다음과 같은 오류가 발생합니다. 아래 코드도 복사했습니다. </p>
<시간 />
<pre>System.Net.WebException: 원격 서버에 연결할 수 없습니다 ---> System.Net.Sockets.SocketException: 대상 컴퓨터가 적극적으로 거부했기 때문에 연결을 설정할 수 없습니다. 127.0.0.1:80
System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress 소켓 주소)
System.Net.Sockets.Socket.InternalConnect(EndPoint 원격EP)에서
System.Net.ServicePoint.ConnectSocketInternal(부울 connectFailure, 소켓 s4, 소켓 s6, 소켓 및 소켓, IPAddress 및 주소, ConnectSocketState 상태, IAsyncResult asyncResult, Int32 시간 초과, 예외 및 예외)
--- 내부 예외 스택 추적 끝 ---
System.Net.HttpWebRequest.GetRequestStream()에서
</pre>
<시간 />
<pre class="brush:php;toolbar:false;">ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy();
HttpWebRequest 요청 = (HttpWebRequest)WebRequest.Create(url);
request.PreAuthenticate = true;
request.Credentials = networkCredential(sla);
request.Method = WebRequestMethods.Http.Post;
request.ContentType = "application/x-www-form-urlencoded";
request.Timeout = v_Timeout * 1000;
if (url.IndexOf("asmx") > 0 && parStartIndex > 0)
{
AppHelper.Logger.Append("#############" + sla.ServiceName);
(StreamWriter reqWriter = new StreamWriter(request.GetRequestStream())) 사용
{
동안(사실)
{
int index01 = parList.Length;
int index02 = parList.IndexOf("=");
if (parList.IndexOf("&") > 0)
index01 = parList.IndexOf("&");
string parName = parList.Substring(0, index02);
string parValue = parList.Substring(index02 + 1, index01 - index02 - 1);
reqWriter.Write("{0}={1}", HttpUtility.UrlEncode(parName), HttpUtility.UrlEncode(parValue));
if (index01 == parList.Length)
부서지다;
reqWriter.Write("&");
parList = parList.Substring(index01 + 1);
}
}
}
또 다른
{
요청.ContentLength = 0;
}
응답 = (HttpWebResponse)request.GetResponse();</pre>
<p><br /></p>