SOAP请求的SoapAction能否因.NET和JAVA之间的互操作性问题或网络/基础结构代理而改变
我有一个场景,.NET3.5SOAP请求的SoapAction能否因.NET和JAVA之间的互操作性问题或网络/基础结构代理而改变,java,.net,soap,proxy,Java,.net,Soap,Proxy,我有一个场景,.NET3.5WebClient正在执行SOAP请求 标题中发送的SoapAction是 <Host>:<Port>/NotOps/RFMP/portTypeEndPoint?SessionID=<token> :/NotOps/RFMP/portTypeEndPoint?SessionID= 但是在SOAP请求的接收端,即JAVA,在“?”字符之前有一个“/”正在接收 <Host>:<Port>/NotOps/RFM
WebClient
正在执行SOAP请求
标题中发送的SoapAction
是
<Host>:<Port>/NotOps/RFMP/portTypeEndPoint?SessionID=<token>
:/NotOps/RFMP/portTypeEndPoint?SessionID=
但是在SOAP请求的接收端,即JAVA,在“?”字符之前有一个“/”正在接收
<Host>:<Port>/NotOps/RFMP/portTypeEndPoint/?SessionID=<token>
:/NotOps/RFMP/portTypeEndPoint/?SessionID=
网络代理是否可以更改soap请求的任何部分?(网络代理是指在企业内部用于访问Web或其他网络的代理)
使用Java服务的.NET3.5客户机之间是否仍然存在互操作性问题,如本文所述
.NET要求使用HTTP SOAPAction标头
标识调用服务的操作。网
要求SOAPAction标头的格式为服务
命名空间,后跟正斜杠,后跟
操作,或urn:Example/sayHello。但是请注意,SOAP::Lite
默认情况下,使用磅符号(#)分隔服务名称空间
从操作的名称。我们在一起的时候,这不是问题
使用SOAP::Lite调用Java服务,因为ApacheSOAP
完全忽略SOAPAction头
提到这一点
例3-19
除了可能导致这种行为之外,还有其他想法吗?
在这种情况下,提到附加正斜杠的错误是误导性的,因为错误是由于通信端点上缺乏权限造成的正如您所说,这种行为可能是由代理重写引起的,但这会非常奇怪 尝试以下测试:
如果/不会出现,那么您必须调查您的网络并找到神奇的代理。在jakub.petr提供的答案旁边 该错误提到了额外的正斜杠,是由于在通信端点上缺乏权限造成的 请记住,即使是详细的错误也可能误导您尝试修复未损坏的东西 所以