当前位置 : 主页 > 网页制作 > html >

RESTful规范

来源:互联网 收集:自由互联 发布时间:2021-06-12
一、Restful规范 # REST: 表征性状态转移(Representational State Transfer) # RESTful规范:web数据请求接口设计规范 规范规定了两部分: 1 url链接应该怎么写 2 返回的数据格式如何写 介绍 二、规范

一、Restful规范

分享图片
# REST: 表征性状态转移(Representational State Transfer)
# RESTful规范:web数据请求接口设计规范

规范规定了两部分:
    1 url链接应该怎么写
    2 返回的数据格式如何写
介绍

二、规范要点

1)通常使用https请求
2)链接会出现api字眼
    https://api.baidu.com
    https://www.baidu.com/api

3)版本:不同版本需要标注
    - https://example.com/api/v1
    - https://example.com/api/v2

4)资源:请求的目标数据称之为资源,单资源采用资名称名词的复数
    https://api.baidu.com/v2/book | https://api.baidu.com/v2/books
    https://api.baidu.com/book  | https://api.baidu.com/book


5) 请求方式:错误示范 - get_book|add_book
                https://api.baidu.com/get_book|add_book
                
              正确示范 - book
                https://api.baidu.com/book
                
    请求方式的正确使用:不是通过动词,而是通过请求的方式决定操作资源的方式
        - get:https://example.com/api/v1/books  获取所有
        - post:https://example.com/api/v1/book  新增一本
        - put:https://example.com/api/v1/book/1  更新id=1的一本
        - patch:https://example.com/api/v1/book/1  更新id=1的一本
        - delete:https://example.com/api/v1/book/1  删除id=1的一本

6)资源过滤:通过接口传递参数来过滤资源
        - https://example.com/api/v1/books?limit=10 限制10条

7)数据状态码:返回数据要标准状态吗,通过在数据中{status: 0} - 注:数据状态码都是约定的
        - SUCCESS("0", "查询成功")
        - NODATA("1", "非正确,无数据,显示基本信息")
        - FEAILED("2", "查询失败")

8)错误信息:请求失败需要标注错误信息 - {"error": "错误信息"} => {"msg": 数据状态描述信息}

9)数据(操作的资源返回结果)
    {"results": []} | {"data": []}
    - get:返回资源列表 | 返回单一资源
    - post:返回单一新增资源
    - put:返回更新的资源
    - patch:返回更新的资源
    - delete:返回空文档

10)子资源返回资源接口:返回的资源如果有子资源,返回子资源的链接地址,如查找书,书的封面图片就可以url表示
   
   
   总结:
    安全的数据是接口
    版本号 名词 请求方式 资源限制
    
    数据状态码 数据信息 子资源的表示方式 
网友评论