Мой код делает запрос https. Это мой код
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(UploadUrl);
request.Method = "POST";
request.KeepAlive = false;
request.Credentials = new NetworkCredential(userid, testpwd);
postData = "<root></root>";
request.ContentType = "application/x-www-form-urlencoded";
byte[] postDataBytes = Encoding.UTF8.GetBytes(postData);
request.ContentLength = postDataBytes.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(postDataBytes, 0, postDataBytes.Length);
requestStream.Close();
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
StreamReader responseReader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
var result = responseReader.ReadToEnd();
responseReader.Close();
Console.WriteLine(result);
}
Этот код работал нормально, но неожиданно выдает следующее исключение
System.Net.WebException
Сообщение об исключении:
Основное соединение было закрыто: при отправке произошла непредвиденная ошибка.
Трассировка стека: в
System.Net.HttpWebRequest.GetRequestStream (TransportContext & context)
в System.Net.HttpWebRequest.GetRequestStream () в
CustomerProcessor.Delivery.Deliver (Строковый контент, Int32
productCategory, строковый идентификатор, строковый xsltFile)
Исключение имеет внутреннее исключение: произошло исключение:
System.IO.IOException Сообщение об исключении: Получено неожиданное
EOF или 0 байтов из транспортного потока.
Трассировка стека: в System.Net.FixedSizeReader.ReadPacket (Byte []
буфер, смещение Int32, количество Int32) в
System.Net.Security.SslState.StartReadFrame (буфер Byte [], Int32
readBytes, AsyncProtocolRequest asyncRequest) в
System.Net.Security.SslState.StartReceiveBlob (буфер Byte [],
AsyncProtocolRequest asyncRequest) в
System.Net.Security.SslState.CheckCompletionBeforeNextReceive (ProtocolToken
сообщение, AsyncProtocolRequest asyncRequest) в
System.Net.Security.SslState.StartSendBlob (Byte [] входящий, Int32
считать, AsyncProtocolRequest asyncRequest) в
System.Net.Security.SslState.ForceAuthentication (логическое значение receiveFirst,
Байт [] буфер, AsyncProtocolRequest asyncRequest) в
System.Net.Security.SslState.ProcessAuthentication (LazyAsyncResult
lazyResult) в
System.Net.TlsStream.CallProcessAuthentication (состояние объекта) в
System.Threading.ExecutionContext.runTryCode (Object userData) в
System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup (TryCode
код, CleanupCode backoutCode, Object userData) в
System.Threading.ExecutionContext.RunInternal (ExecutionContext
executeContext, обратный вызов ContextCallback, состояние объекта) в
System.Threading.ExecutionContext.Run (ExecutionContext
executeContext, обратный вызов ContextCallback, состояние объекта) в
System.Net.TlsStream.ProcessAuthentication (результат LazyAsyncResult)
в System.Net.TlsStream.Write (буфер Byte [], смещение Int32, размер Int32)
в System.Net.PooledStream.Write (буфер Byte [], смещение Int32, Int32).
размер) в System.Net.ConnectStream.WriteHeaders (логическое асинхронное)
Есть ли шанс узнать, что может быть причиной этой проблемы?