微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Web服务 – HTTP over HTTP和SOAP over HTTP之间的区别

SOAP over HTTP是HTTP over HTTP的一个子集,因为我认为SOAP也是一个xml,它确认为模式(SOAP架构)?我认为XML over HTTP服务可以使用GET或POST方法访问。 SOAP over HTTP是否始终使用POST方法?在XML over HTTP的情况下,我假设缺点是模式文件必须与所有消费者共享,而在SOAP over HTTP的情况下,它将是一个单一的WSDL文件。有可能帮助我了解一个人的差异和优势吗?

解决方法

SOAP是XML的专业化,因为它具有一个模式,如 http://www.xmlsoap.org/soap/envelope/,而XML则更为通用。

对于使用GET,您可以阅读以下讨论:http://www.coderanch.com/t/463869/Web-Services/java/SOAP-request-HTTP,但基本上SOAP是通过POST完成的,尽管Axis2似乎对GET有支持,但作为REST在REST似乎规则化的世界中的工作方式。

而且,根据这篇IBM文章(http://www.ibm.com/developerworks/xml/library/x-tipgetr/index.html),SOAP 1.2引入了GET。

正如你所提到的,SOAP是一个标准,所以有一些工具可以轻松地使用它,包括动态客户端生成,如此问题所示,dynamic proxy soap web service client in java?,客户端生成连接所需的存根。

如果您使用XML通过http,根据需要可能会更好,作为传输数据的方式,但在使用情况下,我可以想到,只要使用JSON和REST,似乎更好,但如果您想传输XML或发送XML,那么您可以使用REST来查看。

尽管GET具有大小限制(maximum length of HTTP GET request?),POST可能是更好的选择,这可能是为什么SOAP几乎总是POST。

在WCF中,WSDL不一定是单个文件,如果我记得有许多xml文件需要放在一起才能完成WSDL。

优点取决于您的用例,但我发现使用REST并允许用户选择该类型是有用的,因为在JSON和XML之间切换可能是微不足道的,并且是XML over HTTP的更好选择。

当与旧技术集成时,SOAP最好,因为它们可以轻松使用。例如,当我制作了用于SAP集成的Web服务时,根据ABAP程序员的能力,可以更多地使用它来使用SOAP。

你可能会发现这个使用的问题:

How SOAP and REST work with XML/JSON response?

并且有关在webservices中的JSON和XML的讨论,您可能会发现这有用:

http://digitalbazaar.com/2010/11/22/json-vs-xml/

我忘了这个链接,因为他们做了一个简单的比较,但最终你可以轻松地支持两者。在WCF中,我有一个拥有业务逻辑的控制器,并且必须.aspx文件一个用于SOAP,一个用于REST,一些webservices也支持这两个,因为它只是处理请求和响应差异的问题。所以,如果你想为两者提供支持,并且有一个显示它的商业案例是有道理的,那么选择一个可以轻松实现的框架。

http://digitalbazaar.com/2010/11/22/json-vs-xml/

基本上,目标是通过网络为客户提供服务。什么客户端要连接?客户如何找到最容易达成的目标?请求中传递了多少数据?

这些类型的问题将为您的需求提供最佳解决方案。

原文地址:https://www.jb51.cc/html/232822.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐