何时/如何REST取代SOAP

时间:2012-07-23 16:29:05

标签: web-services rest soap

我目前正在写关于IT技术等的论文。我有一章我比较REST和SOAP,但我找不到如何以及何时(我的意思是过去的一些事件)REST开始了(主要在Web)中取代SOAP作为Web服务的技术。

你能帮我解决这个问题吗? ;)


感谢您提供这些重要信息,但我的意思是其他内容。

我想在Google搜索工具洞察中向您展示一个图表:

Google Insights

正如您在2008年所看到的那样,对于 rest api soap api ,有一些关键词的搜索关键字搜索。所以,我想依靠一些来源(我没有它们的那些)或事件/事实为什么这个交叉点可能发生...最近的事件。

你明白了吗?我知道这可能是非常独特的方法,但我想解释这个肥皂和休息交换。

修改

有没有人有任何想法?我知道这是关于肥皂和休息apis主题的不同方法,但也许有人知道如何'咬'主题;)

2 个答案:

答案 0 :(得分:5)

“代表性国家转移”(REST)一词由Roy Fielding在his doctoral dissertation于2000年引入。 REST描述了一种不是特定于Web API的Web架构,但现在作为开发Web API的方法变得非常流行。 SOAP became a W3C Recommendation in June of 2003。因此,技术上REST是在SOAP之前定义的,但SOAP在一段时间内是非常流行的方法,用于开发Web服务,并且在开始时比REST更受欢迎。但是后来开发人员发现,SOAP开发Web服务/ API过于庞大而且过于复杂,而且REST很好地满足了他们的需求。 REST的简单性似乎使其更受欢迎,并且它遵循基本的HTTP原则这一事实使其在异构平台上更具可移植性。因此,历史上可能没有某个里程碑或事件导致从SOAP到REST的转换。这只是向开发人员需求最有效的过渡。

澄清SOAP历史记录

SOAP版本1.0实际上是由Microsoft在1999年12月引入的,所以这两种技术在定义时都很接近。但直到2000年5月才将W3C作为标准,直到2003年才成为标准。我认为,在它成为一般标准之前,它不能被整个开发社区认为是可行的。为异构环境开发Web服务,这是Web服务和SOA的重大承诺之一。在那之前,它只是可以在微软平台上使用的东西。

根据API趋势评论进行更新

@GarciaPL展示的Google Insights图表非常有趣,我想我理解他在论文中试图展示的内容。但我会对这些数据小心谨慎,得出有力的结论。 Google Insights搜索结果显示在博客文章“REST in peace, SOAP”中。可能在这篇博文中更具体的是显示2000 API的图表,从2008年到2010年的趋势是转向REST。此信息的原始来源是here。这确实显示了公开暴露的API的REST趋势。论文是专门针对公开API的使用还是一般的Web服务开发?如果它是一般的Web服务我不太确定。对于开发内部项目的Microsoft平台上的开发人员来说,今天使用的术语不是SOAP,而是Windows Communication Foundation(WCF)。尽管SOAP处于困境之中,但由于WCF隐藏了许多内部构件,因此几乎不需要讨论管道。如果我在"rest web service", "soap web service", and "wcf web service"上进行Google Insights搜索,您会得到很多不同的结果,显示它们实际上正在收敛。或者,如果你在"restful service", "soap service", and "wcf service"上进行搜索,它实际上会显示WCF在2008年接替,并逐步提升REST。

对于API来说,REST是有意义的,因为它们是可移植的,易于使用,可扩展且易于集成。对于一般的Web服务开发,我不太确定。我认为WCF仍然非常受微软开发人员的欢迎,它非常适合某些类型的项目。这只是为工作挑选合适工具的问题。我将重申我之前所说的内容,我不认为它们是导致向RESTful API过渡的重大历史事件。我认为只是开发人员才能了解正确的工具是什么。

答案 1 :(得分:4)

最适合你的地方是Jim Webber的书“实践中的REST:超媒体和系统架构”

http://www.amazon.com/REST-Practice-Hypermedia-Systems-Architecture/dp/0596805829

在书中是一个特殊的章节 - 第11章“网络和WS- *”。

当您撰写有关REST的论文时,这本书必定适合您。