REST和RPC

REST代表表现层状态转移(representational state transfer)。REST用来描述客户端通过某种形式获取服务器的数据,这些数据资源的格式通常是JSON或XML。同时,这些资源的表现或资源的集合是可以修改的,伴随着行为和关系可以通过多媒体来发现。在我看来,一种简单的理解就是:在设计API时,使用路径定位资源,方法定义操作,通过Content-Type和Accept来协商资源的类型。REST也有一些限制:

  • REST是无状态的,请求之间没有持久的会话信息
  • 响应需要声明成可缓存的
  • REST关注一致性,如果使用HTTP,需要尽可能使用HTTP的特性,而不是去发明新的公约
  • 这些限制允许REST架构的API更加稳定。

RPC是跨语言跨平台的服务调用,不仅是C-S或者前后端之间的通信。一个完善的RPC框架还包含代码生成,通信的规范等等。在实际使用中,以前后端开发为例,前端传递一个方法名和参数给后端,后端执行对应的方法,并给该方法传递对应的参数,最后将执行的结果传递给前端。使用RPC我们可以像调用本地服务(方法)一样调用服务器的服务(方法)。

REST使用HTTP的方法,例如:GET,POST,PUT,DELETE,OPTIONS还有比较不常用的PATCH方法。

RPC通常只会使用GET和POST方法,GET方法通常用来获取信息,POST方法可以用来进行所有的行为。

RPC是以动词为中心的, REST是以名词为中心的, 此处的 动词指的是一些方法, 名词是指资源

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值