现在我对SOAP和宁静的服务之间的区别有了一点了解。
我的问题是什么时候应该使用SOAP,什么时候应该使用RESTful;当谈到性能/速度或请求处理时,哪一个“更好”?
我是第一次在RESTful (Java)实现它,我想知道更多关于它;我以前处理过SOAP。
这是这篇文章的后续问题。
REST几乎总是更快。SOAP的主要优点是它提供了一种机制,可以让服务向客户端描述自己,并宣传它们的存在。
REST轻量级得多,几乎可以使用任何工具实现,从而降低带宽,缩短学习曲线。然而,客户端必须知道要发送什么以及期望发送什么。
通常,当您向外界发布复杂或可能更改的API时,SOAP将更有用。除此之外,REST通常是更好的选择。
REST没有WSDL (Web描述语言)接口定义。
REST基于HTTP,但SOAP可以基于任何传输协议,如HTTP、FTP、SMTP、JMS等。
SOAP是一种协议。它可以运行在JMS、FTP和HTTP之上。
REST vs. SOAP Web服务 我看到很多新的web服务都是使用REST实现的 风格体系结构,而不是SOAP体系结构。让我们后退一步 什么是REST web服务? 首字母缩写REST代表具象状态转移,而这个 基本上意味着每个唯一的URL都代表了一些 对象。您可以使用HTTP get来获取该对象的内容 删除它,然后可以使用POST、PUT或delete来修改 .对象(实际上,大多数服务使用POST来实现此功能) 谁在使用REST? 雅虎所有的网络服务都使用REST,包括Flickr和美味的。 api使用它,pubsub, bloglines, Technorati,以及eBay和Amazon 为REST和SOAP提供web服务 谁在使用SOAP? 谷歌接缝在实现他们的web服务时保持一致 使用SOAP,除了Blogger,它使用xml - rpc。你会 在许多企业软件中也可以找到SOAP web服务 休息vs.肥皂 你可能已经注意到我提到的公司都在使用REST api还没有出现很长时间,他们的api是这样出现的 主要是。所以REST绝对是创建网络的流行方式 服务,如果创建web服务可以成为潮流(让我们面对它 你用肥皂洗漱,累了就休息)。主要的 REST web服务的优点是: 轻量级-没有太多额外的XML标记人类可读结果 易于构建-不需要工具包。SOAP还有一些优点: 容易消耗-有时是刚性类型检查,坚持a 合同开发工具对于使用web服务,它有时是一个 两者之间比较容易。例如谷歌的AdWords web service真的很难消费(在ColdFusion中),它使用SOAP 头文件,以及其他一些让它变得有点困难的东西。 相反,亚马逊的REST web服务有时会很棘手 解析,因为它可以是高度嵌套的,并且结果模式可以变化 无论你选择哪种架构,都要确保它对开发人员来说很容易
REST vs. SOAP Web服务
什么是REST web服务?
谁在使用REST?
雅虎所有的网络服务都使用REST,包括Flickr和美味的。
api使用它,pubsub, bloglines, Technorati,以及eBay和Amazon 为REST和SOAP提供web服务
谁在使用SOAP?
谷歌接缝在实现他们的web服务时保持一致 使用SOAP,除了Blogger,它使用xml - rpc。你会 在许多企业软件中也可以找到SOAP web服务
休息vs.肥皂
轻量级-没有太多额外的XML标记人类可读结果
易于构建-不需要工具包。SOAP还有一些优点:
容易消耗-有时是刚性类型检查,坚持a 合同开发工具对于使用web服务,它有时是一个 两者之间比较容易。例如谷歌的AdWords web service真的很难消费(在ColdFusion中),它使用SOAP 头文件,以及其他一些让它变得有点困难的东西。 相反,亚马逊的REST web服务有时会很棘手 解析,因为它可以是高度嵌套的,并且结果模式可以变化
Freitag, P.(2005)。“REST vs SOAP Web服务”。检索自http://www.petefreitag.com/item/431.cfm on June 13, 2010
肥皂
简单对象访问协议(SOAP)是一种标准的XML语言,定义了消息体系结构和消息格式。Web服务使用它。它包含操作的描述。
休息
具象状态传输(RESTful) web服务。它们是第二代Web服务。
基于rest的web服务通过HTTP而不是基于soap的服务进行通信,并且不需要XML消息或WSDL服务api定义。对于REST中间件不需要,只需要HTTP支持。它是一个WADL标准,REST可以返回XML、纯文本、JSON、HTML等。
SOAP Web服务:
RestWeb服务:
REST在大多数情况下更容易使用,也更灵活。与SOAP不同,REST不必使用XML来提供响应。我们可以找到基于rest的Web服务,这些服务以命令分隔值(CSV)、JavaScript对象符号(JSON)和真正简单联合(RSS)格式输出数据。
我们可以以一种易于在应用程序所需的语言中解析的形式获得所需的输出。REST更高效(使用更小的消息格式)、更快,并且在设计理念上更接近其他Web技术。
SOAP web服务总是执行POST操作,而使用REST,您可以选择特定的HTTP方法,如GET、POST、PUT和DELETE。
例如:要使用SOAP获取一个项目,您应该创建一个请求XML,但是在REST的情况下,您可以在URL本身中指定项目id。
SOAP:
REST代表代表状态传输,而SOAP代表简单对象访问协议。
SOAP定义了自己的安全性,其中REST从底层传输继承了安全性。
SOAP不支持错误处理,但是REST有内置的错误处理。
REST和SOAP的区别: