当前位置:  开发笔记 > 编程语言 > 正文

Restful Web服务如何比基于SOAP的Web服务更好

如何解决《RestfulWeb服务如何比基于SOAP的Web服务更好》经验,为你挑选了1个好方法。

我已经浏览了各种网站,他们提供的唯一答案是 - Restful webservices使用Http自己的方法,如(GET,POST,PUT,DELETE)..而基于SOAP的webservices使用自己的自定义方法.. - Restful Web服务将每个服务方法视为资源,并为其提供URI.

但是,我不明白这些答案的全部意义.至于为什么这些事情证明比基于SOAP的Web服务有如此大的优势..

一个例子将不胜感激



1> RPM1984..:

REST自然适用于Web/Cloud API,而SOAP适用于分布式计算方案.

带宽是REST的主要优点,因为没有复杂的文档可以遍历(即XML,SOAP标头),这对于性能良好的Web API来说非常重要.JSON是一种广泛认可且简单的数据交换标准,并且易于被浏览器和客户端代码读取,这就是为什么大多数RESTful API(雅虎都是一个很好的例子)提供JSON的原因.

更不用说REST可用于XmlHttpRequest对象,这对于Web API的AJAX能力也是至关重要的.

当然,REST的可缓存性功能也不容忽视.因为REST基于HTTP,所以它可以利用HTTP(和Web本身)的许多语义,通过利用HTTP数据包(过期)上的标头来启用浏览器的缓存.更不用说像gzip压缩这样的东西来提高效率.性能方面,REST确实将它钉在SOAP上.

至于SOAP,well SOAP适合有状态操作.WS*标准(安全性,事务等)处理这种管道,这在分布式场景中非常常见.当然,它可以通过REST来完成,但它实际上并不是REST.SOAP非常适合定义客户端和服务器之间的操作协定,这在分布式方案中至关重要.

所以我的观点(以及整个SOAP vs REST的事情都是高度自以为是),将SOAP用于分布式计算场景,将REST用于Web API.


@达雷尔·米勒(Darrel Miller)-这就是为什么我的最后一段有警告“所以我的意见”。:) REST与SOAP的争论非常激烈。我曾在将后端系统与15多种其他系统集成在一起的公司工作。他们在这里选择SOAP,因为最重要的是操作合同/安全性,而不是性能/可伸缩性。正如我所说,这是我的看法/经验。我本人是一个RESTful小男孩。:)
推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有