RESTful简介

何为RESTful

RESTful架构是目前最流行的一种互联网软件架构
是Roy Thomas Fielding在他2000年的博士论文中提出的
是Representational State Transfer的缩写,翻译过来是”表现层状态转化”
是所有Web应用都应该遵守的架构设计指导原则
7个HTTP方法:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS

  • 安全:线程安全.(多线程同时读不会有问题;多线程同时修改就容易出问题了)
    • 幂等性:同一个请求(路径/参数)无论请求多少次,资源的状态都是一样的.(无论get多少次,获取的结果都一样)

GET

  • 安全且幂等
  • 获取表示
  • 变更时获取表示(缓存)

适合查询类接口使用

POST

  • 不安全且不幂等
  • 使用服务端管理的(自动产生)的实例号创建资源
  • 创建子资源
  • 部分更新资源
  • 如果没有被修改,则不过更新资源(乐观锁)

适合数据提交类的接口使用(部分信息由服务器产生,例如主键由服务器来生成,其他信息客户端提交)

PUT

  • 不安全但幂等
  • 用客户端管理的实例号创建一个资源
  • 通过替换的方式更新资源
  • 如果未被修改,则更新资源(乐观锁)

适合更新数据的接口使用(所有信息全部由客户端提交,例如更新信息时,所有涉及到的信息全部由客户端来提交)

DELETE

  • 不安全但幂等
  • 删除资源

适合删除数据的接口使用

请求返回响应码

代码含义
200(OK)- 如果现有资源已被更改
201(created)- 如果新资源被创建
202(accepted)- 已接受处理请求但尚未完成(异步处理)
301(Moved Permanently)- 资源的URI被更新
303(See Other)- 其他(负载均衡)
400(bad request)- 指代坏请求
404(not found)- 资源不存在
406(not acceptable)- 服务端不支持所需表示
409(conflict)- 通用冲突
412(Precondition Failed)- 前置条件失败(如执行条件更新时的冲突)
415(unsupported media type)- 接受到的表示不受支持
500(internal server error)- 通用错误响应
503(Service Unavailable)- 服务当前无法处理请求
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值