对RESTFUL接口的理解

1.什么是rest

REST是英文representational state transfer(表象性状态转变)或者表述性状态转移;Rest是web服务的一种架构风格;它是一种设计风格 

2. Rest架构的主要原则

 网络上的所有事物都被抽象为资源 

每个资源都有一个唯一的资源标识符 

同一个资源具有多种表现形式(xml,json等) 

对资源的各种操作不会改变资源标识符 

所有的操作都是无状态的 符合REST原则的架构方式即可称为RESTful

3.使用前后对比

在Restful之前的操作: 

http://127.0.0.1/user/query/1 GET 根据用户id查询用户数据 

http://127.0.0.1/user/save POST 新增用户 

http://127.0.0.1/user/update POST 修改用户信息 

http://127.0.0.1/user/delete GET/POST 删除用户信息 

RESTful用法: 

http://127.0.0.1/user/1 GET 根据用户id查询用户数据 

http://127.0.0.1/user POST 新增用户 

http://127.0.0.1/user PUT 修改用户信息 

http://127.0.0.1/user DELETE 删除用户信息

4.实践要点

4.1 协议

api和用户的通信协议总是使用https协议。

4.2 域名

1.尽量将api部署到专有域名之下,如:https://api.example.com

2.简单不会进一步扩展的域名可以考虑放到主域名下,如:https://example.org/api

4.3 版本

4.3.1 应该将api的版本放置到url中,如:https://api.example.com/v1

4.3.2 也可以考虑将版本放置到http响应报文里

4.4 路径

在restful架构中,每个网址代表一种资源,所以网址中不能有动词,只能有名词,而且所用的名词往往与数据库的表格对应。

如:https://api.example.com/v1/emplyees

4.5 HTTP动词

对资源的具体操作有http动词表示。常用的http动词有下面5种:

GET:从服务器取出资源

POST:在服务器中新建资源

PUT:更新服务器中资源

DELETE:删除服务器中资源

PATCH:更新服务器资源

猜你喜欢

转载自blog.csdn.net/songshuzhong/article/details/80298000