Restful规范(概念)

在前后端分离的应用项目模式中,后端需要提供API接口,REST就是适用这种模式的API接口的设计风格。REST全称是Representational State Transfer,表征性状态转移。

十条规范

1.数据的安全保障

url链接一般采用https协议进行传输

2.接口特征表现

在API地址中带接口标识,咱们一般放在地址栏中(放在域名中)

https://api.baidu.com
https://www.baidu.com/api

3.多版本共存:在url链接中带版本标识

-https://api.weibo.com/2/
-https://api.weibo.com/v2/
-https://api.weibo.com/?version=2
-https://api.weibo.com/v1/login  --->需要的参数name和pwd
-https://api.weibo.com/v2/login --->需要的参数name和pwd和code

4.数据即是资源,均使用名词(可复数)

前后端交互的数据我们称之为资源

 -https://127.0.0.1/api/v1/users
-https://127.0.0.1/api/v1/get_users  # 不符合规范

5.资源操作由请求方式决定(method)

    -获取资源用get
    -新增资源用post
    -修改资源使用put
    -删除资源使用delete
    https://api.baidu.com/books      - get请求:获取所有书
    https://api.baidu.com/books/1    - get请求:获取主键为1的书
    https://api.baidu.com/books      - post请求:新增一本书书
    https://api.baidu.com/books/1    - put请求:整体修改主键为1的书
    https://api.baidu.com/books/1    - patch请求:局部修改主键为1的书
    https://api.baidu.com/books/1    -delete请求:删除主键为1的书

6.url中带搜索或者过滤条件      

https://api.example.com/v1/zoos?name=猴子 get请求

7.响应状态码

响应中带状态码

http响应状态码:1xx,2xx,3xx,4xx,5xx

自己定制的状态码(用的多): 100成功,每个公司有的不一样

8.返回中带错误信息

{code:100,msg:成功}

9.返回结果,符合以下规范

GET /collection:返回资源对象的列表(数组)       [{name:xx,age:19},{name:xx,age:19},{}]
GET /collection/resource:返回单个资源对象        {name:xx,age:19}
POST /collection:返回新生成的资源对象             {name:yy,age:19}
PUT /collection/resource:返回完整的资源对象       {name:xx,age:20}
PATCH /collection/resource:返回完整的资源对象     {name:xx,age:20}
DELETE /collection/resource:返回一个空文档        

10.返回数据中带url链接

"url": "http://blog.sina.com.cn/zaku",

你可能感兴趣的:(restful,后端)