WebService(四):REST

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014231646/article/details/80620207

一、REST和SOAP

SOAP:简单对象访问协议

REST:表述性状态传递

区别:

  • soap以操作为中心,接受xml作为输入,消息通过http传输协议发出,通过RPC调用,再返回一个xml文档。
  • soap采用xml文档的消息体,消息的有效负载相对rest的json(当然rest也能用xml等)更少,这点soap相对更重量级。
  • rest采用http方法(get,put,post,delete)对URI进行操作,开发简单。
  • rest设计原则是无状态的,容易支持负载均衡。

使用场景:

REST

  • 有限的带宽 json更轻量
  • 无状态性
  • 需要缓存 REST 的应用可以充分地挖掘 HTTP 协议对缓存支持的能力。当客户端第一次发送 HTTP GET 请求给服务器获得内容后,该内容可能被缓存服务器 (Cache Server) 缓存。当下一次客户端请求同样的资源时,缓存可以直接给出响应,而不需要请求远程的服务器获得。对于soap而言,SOAP 消息所使用的 URI 总是指向 SOAP 的服务器,采用缓存,缓存服务器如果不解码 SOAP 消息体,没法知道该 HTTP 请求是否是想从服务器获得数据。

SOAP

  • 安全性要求
  • 有状态的操作

二、常见框架

Jersey ,CXF(Apache提供),JBoss的RestEasy, Dubbo。

参考:https://blog.csdn.net/shikaiwencn/article/details/51730727

猜你喜欢

转载自blog.csdn.net/u014231646/article/details/80620207