RESTful(Representational State Transfer)资源"表现层状态转化"
是一种API设计规范,参照这个规范,可以让接口更易读
什么是RESTful架构:
(1)每一个URI(统一资源标识符)代表一种资源;
(2)客户端和服务器之间,传递这种资源的某种表现层;
(3)客户端通过HTTP动词,对服务器端资源进行操作,实现"表现层状态转化"。
常见的5个操作动词:
GET (SELECT):从服务器或者资源列表中检索特定的资源。
POST (CREATE): 在服务器上创建新的资源。
PUT (UPDATE):更新服务器上的资源,提供整个资源。
PATCH (UPDATE): 更新服务器上的资源,仅提供改动的属性。
DELETE (DELETE): 从服务器上移除一个资源。
RESTful API设计原则:
(1)URL 的命名必须全部小写;
(2)URL 中资源(resource)的命名必须是名词,并且应该是复数形式。
(3)URL必须是易读的
(4)URL 一定不可暴露服务器架构
(5)接口版本号最好放入头部信息中
反例:
https://api.example.com/getUserInfo?userid=1 //出现大写字母
https://api.example.com/getusers // 资源非名词
https://api.example.com/sv/u // 不易读
https://api.example.com/cgi-bin/users/get_user.php?userid=1 // 暴露接口
正例:
https://api.example.com/zoos
https://api.example.com/animals
https://api.example.com/zoos/{zoo}/animals
https://api.example.com/animal_types
参考文献: 什么是RESETful