asp.net – 什么可能导致一个服务器上的此错误,但不是另一个?
我们有一个连接到外部Web服务的ASP.Net网站,它几天前突然停止工作.
基本代码是这样的: Try request = New ExternalWebService.ProcessRequestService ' Error occurs here: response = request.processCommand(parameters) ' Do some other stuff with response here Catch webEx As System.Net.WebException ' This triggers and generic error gets displayed Catch ex As Exception Finally End Try 使用SendFailure异常触发System.Net.WebException,并返回此堆栈跟踪: The underlying connection was closed: An unexpected error occurred on a send. - at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request) at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName,Object[] parameters) at ExternalWebService.ProcessRequestService.processCommand(parameters) 当我尝试在我的开发机器上调试此问题时,它工作正常,不会发生异常. 我们的网络服务器最近没有更新,我可以使用FireFox从Web服务器连接到wsdl服务(但我无法与IE连接,但这可能与我们在网络服务器上与IE有关的其他问题有关) 我已经尝试了为错误消息#2 here发布的所有解决方案,包括设置KeepAlive = False和ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3,但是没有人能解决这个问题. 我们的网络服务器运行Windows Server 2003和IIS6.0 什么可能导致这个错误发生在一台机器上,而不是另一台机器上? 编辑:这是跟踪信息: System.Web.Services.Asmx Information: 0 : Calling XmlSerializer [Create XmlSerializer] Method: System.Xml.Serialization.XmlSerializer#1669721556::FromMappings(System.Xml.Serialization.XmlMapping[]#4002219=[4],ExternalWebService.ProcessRequestService#93032588=ExternalWebService.ProcessRequestService) Caller: System.Web.Services.Protocols.SoapClientType#42808772::.ctor(ExternalWebService.ProcessRequestService#93032588=ExternalWebService.ProcessRequestService) ProcessId=2796 LogicalOperationStack= ThreadId=14 DateTime=2012-12-21T17:02:39.2826250Z Timestamp=61755143048799345 System.Web.Services.Asmx Information: 0 : Return from XmlSerializer [Create XmlSerializer] Caller: System.Web.Services.Protocols.SoapClientType#42808772::.ctor(ExternalWebService.ProcessRequestService#93032588=ExternalWebService.ProcessRequestService) ProcessId=2796 LogicalOperationStack= ThreadId=14 DateTime=2012-12-21T17:02:39.6576250Z Timestamp=61755144323396760 System.Web.Services.Asmx Information: 0 : Calling XmlSerializer [Write Request] Method: Microsoft.Xml.Serialization.GeneratedAssembly.ArrayOfObjectSerializer#1231684::Serialize(System.Xml.XmlTextWriter#8023888=..,System.Object[]#19695157=[40],(null),(null)) Caller: ExternalWebService.ProcessRequestService#60553900::Serialize() ProcessId=2796 LogicalOperationStack= ThreadId=14 DateTime=2012-12-21T17:02:39.7357500Z Timestamp=61755144598320131 System.Web.Services.Asmx Information: 0 : Return from XmlSerializer [Write Request] Caller: ExternalWebService.ProcessRequestService#60553900::Serialize() ProcessId=2796 LogicalOperationStack= ThreadId=14 DateTime=2012-12-21T17:02:39.7357500Z Timestamp=61755144621621529 System.Web.Services.Asmx Information: 0 : Calling WebRequest.GetResponse Method: System.Net.HttpWebRequest#2800407::GetResponse() Caller: ExternalWebService.ProcessRequestService#60553900::GetWebResponse() ProcessId=2796 LogicalOperationStack= ThreadId=14 DateTime=2012-12-21T17:02:39.7357500Z Timestamp=61755144622114240 解决方法
显然在我的特定情况下,这是因为Web服务供应商增加了他们的安全性,而我们的Web服务器没有解密连接所需的正确库.
我们唯一的线索是一个系统事件查看器条目,其ID为36874,并且在我们网站停止工作的同一天回来的Schannel来源说:
但是,如果你自己调试这个问题,this link非常有用,因为它给出了一些错误的错误描述,它指出了我正确的方向,我的问题与无法连接到他们的Web服务有关.
并且链接的Microsoft支持页面也非常详细地介绍了您可以尝试解决此问题的最常见原因的一些不同的解决方案. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 建筑设计DAL层
- asp.net – Viewstate vs Postback
- asp.net-mvc – 在另一个文件夹中捆绑的Javascript
- ASP.NET Webforms – 关闭缓存,但仅针对“页面”,不针对静态
- asp.net-mvc-3 – ASP.NET MVC 3 – 在jquery对话框中编辑动
- .net – 需要临时报告组件
- asp.net-core – 如何忽略MVC6中的路由
- macos – ASP.NET CORE 2.1预览“Csc”任务不支持“SharedC
- 如何在Vista上的IIS7下调试ASP.NET应用程序?
- asp.net-mvc – 为什么log4net不记录nhibernate信息
- asp.net-web-api – Ninject 3 – BeginBlock()是
- asp.net – 如何使用数据库实现同步Memcached
- asp.net-web-api – Ninject.Web.WebApi.OwinHos
- 验证 – ASP.Net MVC2:ModelState是无效的,但我
- 是否可以使Page.IsPostBack独立于ASP.net而变为真
- 创建独立于asp.net webforms中的源代码的网站模板
- asp.net-mvc – 保持控制器瘦(太多的动作方法)
- ASP.NET的临时文件下载链接
- 如何在ASP.NET中混合WebForms和MVC
- 使T4MVC与ASP.NET 5一起使用