服务器提交了协议违规。 Section = ResponseStatusLine“对于PHP webservice

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了服务器提交了协议违规。 Section = ResponseStatusLine“对于PHP webservice相关的知识,希望对你有一定的参考价值。

我在我的C#代码中调用了一个Web服务。 Web服务是用php构建的。我正在调用它的加载卸载方法。网络服务让我回报

"The server committed a protocol violation. Section=ResponseStatusLine"

如果我以5到10秒的延迟呼叫服务,则会出错。这是我用来调用服务的代码。

private MyServiceMachine client = new MyServiceMachine ();
client.loadunload();
Thanks in advance for help.

这是异常我得到的异常详细信息:

Message:    The server committed a protocol violation. Section=ResponseStatusLine
Source: System.Web.Services
StackTrace:    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 SPLocker.Core.lendingMachineService.lendingMachine.loadUnLoad(String MID, String TS, String RE, Object BS)
   at SPLocker.Core.TransactionHelper.loadUnLoad(EnumLendingServiceMode mode, Int32[] BoxIDs, Boolean IsAllBOXes)
TargetSite: System.Net.WebResponse 
答案

听起来像是C#HttpWebRequest类返回的错误,而不是端点服务器返回的错误。

打开调试是我的建议。

http://blogs.msdn.com/b/sburke/archive/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code.aspx

另一答案

http://social.msdn.microsoft.com/forums/en-US/netfxnetcom/thread/ff098248-551c-4da9-8ba5-358a9f8ccc57

另一答案

另一种可能性:当进行POST时,服务器以100不正确的方式响应100。

这解决了我的问题:

request.ServicePoint.Expect100Continue = false;

以上是关于服务器提交了协议违规。 Section = ResponseStatusLine“对于PHP webservice的主要内容,如果未能解决你的问题,请参考以下文章

服务器提交了协议冲突. Section=ResponseHeader Detail=“Content-Length”标题值无效

HttpWebRequest出错 服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF

关于 服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF 错误

服务器提交了协议冲突. Section=ResponseHeader Detail=CR 后面必须是 LF

服务器违反了协议。 C# 中的 Section=ResponseStatusLine

C# SOAP Web 服务 服务器违反了协议。 Section=ResponseStatusLine