System.IO.IOException:由于意外的>数据包格式,握手失败了?

The*_*ner 23 c# wcf

有谁知道这意味着什么?

System.Net.WebException:基础连接已关闭:发送时发生意外错误.---> System.IO.IOException:由于意外的数据包格式,握手失败.System.Net.Security.SslState的System.Net.Security.SslState.StartReadFrame(Byte []缓冲区,Int32 readBytes,AsyncProtocolRequest asyncRequest)处于System.Net.Security.SslState的System.Net.Security.SslState.StartReceiveBlob(Byte []缓冲区,AsyncProtocolRequest asyncRequest). System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst,Byte [] buffer,AsyncProtocolRequest)上的System.Net.Security.SslState.StartSendBlob(Byte []传入,Int32计数,AsyncProtocolRequest asyncRequest)中的CheckCompletionBeforeNextReceive(ProtocolToken消息,AsyncProtocolRequest asyncRequest) asyncRequest)System.Net上的System.Net.Se.SlsStream.CallProcessAuthentication(对象状态)中的System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)处于System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup的System.Threading.ExecutionContext.runTryCode(Object userData) (TryCode代码,CleanupCode backoutCode,Object userData)在System.Threading.ExecutionContext.RunInternal(ExecutionContext executionCont)在System.Net.TlsStream.Write(Byte [])的System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult结果)的System.Threading.ExecutionContext.Run(ExecutionContext executionContext,ContextCallback回调,对象状态)中的ext,ContextCallback回调,对象状态)在System.Net.ConnectStream.WriteHeaders(布尔异步)处的System.Net.PooledStream.Write(Byte []缓冲区,Int32偏移量,Int32大小)处的缓冲区,Int32偏移量,Int32大小)---内部异常堆栈跟踪的结束 - - 在System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan超时)处的System.Net.HttpWebRequest.GetResponse()处

编辑:

这是我打电话的方法:

_productsService = new ProductsPortTypeClient(); _productsService.GetResortProducts(GetProductsCredentials(),GetResortProductParams());

Tob*_*asz 29

它看起来像SSL认证有问题,它未能在握手阶段,也许两个实现是不兼容的,你可以检查响应的WSDL格式,搞清楚应该用什么格式的沟通和检查,如果由你符合规定发出的一个使用它(您可以使用任何类型的网络监视器软件,例如Microsoft网络监视器)


Lud*_*dwo 6

就我而言,是 Skype 阻止了 443 端口。转到 Skype 工具-高级连接并禁用“使用端口 80 和 443 进行连接...”


Rah*_*rma 6

我只是想根据其中一条评论做出回答,因为它可能会导致发生此错误。

在某些情况下,如果您有一段BaseURL时间调用 a API,那么如果您混淆了http和,则可能会出现问题https。这发生在我的情况下,同时调用 Google API。在某些情况下,这是一个简单的修复方法,并且可能发生在任何人身上。

希望这有助于有人出来。

  • 简而言之,尝试通过 HTTPS 访问 HTTP 端点将会出现此错误消息。 (2认同)
  • 七个祝福指出我的愚蠢 (2认同)