通过各种关于编码与文字之间差异的教程,我发现文字是推荐的选项;教程还提供了简单服务的各种示例,其中文字是合乎逻辑的选择;但我开始想知道为什么编码选项首先存在?它是最初添加到规范中并稍后被弃用的东西,是否仅用于向后兼容?
是否有任何真实世界的例子,您可以选择编码而不是文字?
答案 0 :(得分:2)
我认为创建编码样式是为了反映现代编程语言中常见的数据结构,如数组,地图等。在您尝试手动创建WSDL文件之前,它的工作原理很好应用所有这些SOAP-ENC规则。这对我很重要,因为我根据XML Schema制作了一些验证函数。而且,将原始XML消息调试为document / literal要容易得多。
我建议你比较两个版本的波兰Allegro WebAPI。第一个使用RPC和编码样式:https://webapi.allegro.pl/uploader.php?wsdl
要查看另一个,只需将“uploader”替换为URL中的“service”。
在这里,您已经在Allegro中描述了文档/文字: http://allegro.pl/webapi/tutorials.php/tutorial/id,261
我现在在SOAP服务中使用document / literal,而且我更容易精确地创建WSDL。在PHP中处理SOAP请求有点复杂,但我已经习惯了它。