我有一个c#“客户端”和一个Java“服务器”。 java服务器有一个wsdl它服务于客户端。 到目前为止,它对于c#向服务器发出请求以执行soap操作起作用。我的服务器获取肥皂请求执行该方法并尝试将结果返回给客户端。如何解决在c#中的协议违规
但是,当我将响应发送到c#时,我得到“服务器提交了协议违规,Section = ResponseStatusLine”。
我花了整整一天的时间来解决这个问题,并没有提出任何有效的方法。如果我解释我做了什么,这篇文章会很长,所以我会保持简短。
我谷歌搜索几个小时,一切都告诉我我的“响应线”是正确的。我尝试关闭Skype,重新排列响应行,添加东西,拿走东西等,等等都无济于事。
这是一个班级任务,所以不行,我不能使用apis来帮忙。我必须在服务器端手动执行所有操作。这意味着手动解析,手动创建soap响应和http响应。只是以为你想知道,在你说使用的东西,它为我做。
我甚至试图通过创建一个“模仿”c#的java客户端来确保我的服务器正在发送正确的头文件,以便我可以看到服务器返回的内容。但是,它正在返回到我告诉它发送的内容。我试着告诉我的java客户端做同样的事情,但对一个真正的运行c#服务,看看真正的服务返回什么,它返回基本上相同的东西。为了安全起见,我复制了它的响应并尝试将它发送到C#客户端,并且仍然抛出错误。
任何人都可以帮忙吗?我尝试了所有我能想到的,包括将useUnsafeHeaderParsing添加到我的应用程序配置中。没有任何工作。我把它发送到一个真正的服务发送它,它对我大叫。我把它发给我想要的东西,它大叫。
我送这样的:
"200 OK HTTP/1.0\r\n" +
"Content-Length: 201\r\n" +
"Cache-Control: private\r\n" +
"Content-Type: text/xml; charset=utf-8\r\n\r\n";
投票关闭 - 家庭作业问题显然不是真的在这里支持的东西。 – TomTom
@TomTom他们是。 –