上一节我们讲了基于XML的SOAP协议,SOAP的S是啥意思来着?是Simple,但是好像一点儿都不简单啊!
你会发现,对于SOAP来讲,无论XML中调用的是什么函数,多是通过HTTP的POST方法发送的。但是咱们原来学HTTP的时候,我们知道HTTP除了POST,还有PUT、DELETE、GET等方法,这些也可以代表一个个动作,而且基本满足增、删、查、改的需求,比如增是POST,删是DELETE,查是GET,改是PUT。
传输协议问题
对于SOAP来讲,比如我创建一个订单,用POST,在XML里面写明动作是CreateOrder;删除一个订单,还是用POST,在XML里面写明了动作是DeleteOrder。其实创建订单完全可以使用POST动作,然后在XML里面放一个订单的信息就可以了,而删除用DELETE动作,然后在XML里面放一个订单的ID就可以了。
于是上面的那个SOAP就变成下面这个简单的模样。
POST /purchaseOrder HTTP/1.1
Host: www.geektime.com
Content-Type: application/xml; charset=utf-8
Content-Length: nnn
<?xml version="1.0"?>
<order>
<date>2018-07-01</date>
<className>趣谈网络协议</className>
<Author>刘超</Author>
<price>68</price>
本文对比了基于XML的SOAP协议和RESTful接口,指出RESTful更符合互联网应用的设计风格,强调资源状态转移,无状态化和HTTP方法的使用。通过实例解释了RESTful如何简化API设计,提高服务的可扩展性和缓存能力,并介绍了服务发现框架Eureka在RESTful API中的应用。
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



