บางครั้งฉันได้รับข้อผิดพลาดต่อไปนี้ในขณะที่ฉันกำลังทำ HttpWebRequest กับบริการเว็บ ฉันคัดลอกรหัสของฉันด้านล่างด้วย
System.Net.WebException: ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ระยะไกล ---> System.Net.Sockets.SocketException: ไม่สามารถทำการเชื่อมต่อได้เนื่องจากเครื่องเป้าหมายปฏิเสธ 127.0.0.1:80 ที่ System.Net.Sockets.Socket.DoConnect (EndPoint endPointSnapshot, SocketAddress socketAddress) ที่ System.Net.Sockets.Socket.InternalConnect (EndPoint remoteEP) ที่ System.Net.ServicePoint.ConnectSocketInternal (บูลีน connectFailure, ซ็อกเก็ต s4, ซ็อกเก็ต s6, ซ็อกเก็ตและซ็อกเก็ต, ที่อยู่ IP & ที่อยู่, สถานะ ConnectSocketState, IAsyncResult asyncResult, หมดเวลา Int32, ข้อยกเว้น & ข้อยกเว้น) --- สิ้นสุดการติดตามสแต็กข้อยกเว้นภายใน --- ที่ System.Net.HttpWebRequest.GetRequestStream ()
ServicePointManager.CertificatePolicy = new TrustAllCertificatePolicy();
HttpWebRequest request = (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);
using (StreamWriter reqWriter = new StreamWriter(request.GetRequestStream()))
{
while (true)
{
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)
break;
reqWriter.Write("&");
parList = parList.Substring(index01 + 1);
}
}
}
else
{
request.ContentLength = 0;
}
response = (HttpWebResponse)request.GetResponse();