1

我创建了一个代理服务来调用第 3 方网络服务。我在我的代理服务中循环调用该方法 5000 次。我在循环中间的大约 100 个调用中收到此错误(大约 4000 个成功工作,然后大约 100 个错误,然后它成功完成剩余的 900 个)。

这是在服务器端抛出的错误:

System.InvalidOperationException 消息无法处理请求。方法

System.Web.Services.Protocols.WebServiceHandlerFactory.CoreGetHandler

在 System.Web.Services.Protocols.WebServiceHandlerFactory.CoreGetHandler(类型

类型、HttpContext 上下文、HttpRequest 请求、HttpResponse 响应)

在 System.Web.Services.Protocols.WebServiceHandlerFactory.GetHandler(HttpContext

上下文、字符串动词、字符串 url、字符串文件路径)

在 System.Web.Script.Services.ScriptHandlerFactory.GetHandler(HttpContext

上下文,字符串 requestType,字符串 url,字符串路径翻译)

在 System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()

在 System.Web.HttpApplication.ExecuteStep(IExecutionStep 步骤,

Boolean & completedSynchronously)

附加信息

+System.InvalidOperationException:+System.Web.HttpException:

 Message: Server cannot clear headers after HTTP headers have been sent. 

 Source: System.Web 

 Method: System.Web.HttpResponse.ClearHeaders

我看到客户端的错误是:

System.Net.WebException:请求失败,HTTP 状态为 400:错误请求。在 System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage 消息,WebResponse 响应,流 responseStream,布尔 asyncCall)在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(字符串方法名,对象 [] 参数)

到目前为止,我发现的谷歌搜索只与服务器上的文件传输有关。谁能指出我不同的方向?

编辑:我刚刚检查了托管代理服务的服务器,并在 EventViewer/EventLog 中注意到了这个错误:

  • 0 2 0
    0x80000000000000
    569114
    应用程序
    labdevapp21.dot.labidot.lan
  • HTTP/ASMX 消息接收失败:System.InvalidOperationException:在 System.Web.Services.Protocols.SoapMessage.get_ContentType 的 System.Web.Services.Protocols.SoapMessage.EnsureStage(SoapMessageStage 阶段)的消息阶段 0 中可能无法访问该值() 在 Microsoft.Web.Services3.WseProtocol.CheckMtomContentType(SoapServerMessage 消息) 在 Microsoft.Web.Services3.WseProtocol.CreateRequestSoapEnvelope(SoapServerMessage 消息) 在 Microsoft.Web.Services3.WseProtocol.GetRequestEnvelopeFromMessage(SoapServerMessage 消息)
4

0 回答 0