SAP WEBSERVICE Soap中RPC-style和Document-style

RPC是以方法调用的方式描述WebSerivce的,也就是说,你要说清楚调用的那个方法,以及各个参数的名称和值。要描述这些东东,SOAP消息就要有一个统一的规范,指出那一部分是方法名,哪个部分是参数,哪个部分是返回值。换句话说,RPC方式调用的SOAP消息格式是有章可循的,固定的。(比如说,每个Parameter必须对应一个Part,Part的name必须和参数名一致)。 

而Document则是以文档传输的方式描述WebService,只要你的SoapBody里面是一个可以用Schema描述的合法的Xml文档就行了,对具体的格式没有什么要求(Schema要在WSDL里面写)。 

可以看出,Document形式要更加灵活——尤其是需要传输特定格式的Xml文档的时候,而RPC的Soap消息实际上也可以用Document形式模拟(只要Schema定义得当)。所以目前Document方式应用更广泛一些(也是.NET里面的缺省方式)。 

对Namespace,我觉得两者应该没有明显的区别。主要是RPC通常与Encoding模式结合使用,这就要引用Soap的namespace了;而Document只要引用XmlSchema的Namespace定义类型就成了。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。