对restful 规范的理解

REST:Representational State Transfer的缩写,翻译为“具象状态传输”,一般解释为“表现层状态转换”。它是Roy Tomas Fielding博士提出的一种软件应用的架构风格。REST是设计风格而不是标准,是指客户端和服务器的交互形式。
REST的特点:
1.具象的。一般指表现层,要表现的对象就是资源。
2.表现:资源的表现形式,txt格式、html格式、json格式、JPG格式等,浏览器通过URL确定资源的位置,但是需要在HTTP请求头中,用A车平台和Content-Type字段指定,这两个字段是对资源的表现描述
3.状态转换:客户端和服务器交互的过程,在这个过程中,一定会有数据和状态转换,这就是状态转换,其中GET表示获取资源,POST表示新建资源,PUT表示更新资源,DELETE表示删除资源,这是HTTP协议中最常用的四种操作方式。

  • REST架构
  • 每个URL代表一种资源
  • 客户端和服务器之间,传递这种资源的某种表现层
  • 客户端通过GET,POST,PUT,DELETE这四个动词,对服务器资源进行操作,实现表现层的状态转换。

具体要求:
1.域名:
将api部署在专用域名下或者主域名下

127.0.0.1:5000/api/goods
#GET 查询
#POST 创建资源
#PUT 更新资源
#DELETE 删除

2.版本
将api的版本放在URL中

127.0.0.1:5000/api/v1_0/goods
http://www.example.com/app/1.0/info
http://www.example.com/app/1.1/info

3.路径
路径表示api的具体网址,每个网址代表一种资源,资源作为网址,网址中不能有动词只能有名词,一般名词要与数据库的表名对应,而且名词要使用复数。
错误示例:

http://www.example.com/getGoods

正确示例:

#获取单个商品
http://www.example.com/app/goods/1
#获取所有商品
http://www.example.com/app/goods

4.使用标准的HTTP方法:

GET
POST
PUT
DELETE

5.过滤信息

#指定返回数据的数量
http://www,example.com/goods?limit=10
#指定返回数据的开始位置
http://www.example.com/goods?offsest=10
#指定第几页已经每页数据的数量
http://www.example.com/goods?page/page=2&per_page=20

6.状态码
常用的状态码有:

200 OK 服务器成功返回用户请求的数据
201 CREATED 用于新建或者修改数据成功
202 ACCEPTED 表示请求已经进入后台排队
400 INVALID REQUEST 用户发出的请求有错误
401 Uuanthorized 用户没有权限
403 Forbidden 访问被禁止
404 NOT FOUND 请求不存在的记录
500 INTERNAL SERVER ERROR 服务器发生错误

7.错误信息
一般来说,服务器返回的错误信息,以键值对的形式返回
8.返回数据类型
服务器返回的数据类型,尽量使用JSON格式,避免使用XML

猜你喜欢

转载自blog.csdn.net/weixin_40612082/article/details/81212667