REST是Representational State Transfer的缩写,翻译为中文就是“表述性状态转移”。(具体解释见什么是 REST API 一文读懂 (RESTful API)_哔哩哔哩_bilibili,理解RESTful架构 - 阮一峰的网络日志 (ruanyifeng.com))
REST架构的主要原则:
1.网络上的所有事物都被抽象为资源
2.每个资源都有一个唯一的资源标识符
3.同一个资源具有多种表现形式(xml,json等)
4.对资源的各种操作不会改变资源标识符
5.所有的操作都是无状态的
RESTful API就是满足REST原则的接口,它通过语义化的方式请求资源URL,并根据返回的语义判断这次操作的返回类型和结果。
通俗来说,也就是:
看url就知道要什么(资源/数据)
看http method就知道要干什么
看http status code就知道结果如何
接口举例:
传统的URL请求格式:
GET api/getUser/1 查询用户信息
POST api/addUser 新增用户
POST api/updateUser 修改用户信息
GET/POST api/deleteUser 删除用户信息
RESTful请求格式:
GET api/user/1 查询用户信息
POST api/user 新增用户
PUT api/user 修改用户信息
DELETE api/user 删除用户信息
这两种格式的url,对我们来说,似乎是没什么问题的,都能读懂。实际上请求头里面,GET就是表示查询,POST就是表示新增,意图非常明显,我们没有必要再在url里面增加描述了(add...,update....)。
RESTful的API拥有清楚而又简短的URI,可读性非常强,只需用一个接口就可以完成资源的操作。