统一接口设计风格:
1.URL地址尽量使用名词,不要出现动词
2.使用不同的请求方式,代表要执行不同的操作 (GET)获取 POST(新增) PUT(修改)DELETE(删除) 不常用:PATCH(修改) HEAD(只返回请求头没有请求体) OPTIONS(获取信息)
3.访问URL地址时,如果有一些过滤的参数,参数可以放到查询字符串中
4.响应数据: GET /books/:返回所有的图书数据 GET /books/1/:返回id为1的图书数据 POST /books/:将新增的图书数据返回 PUT /books/1/:将修改的图书数据返回 DELETE /books/1:返回空文档 获取|修改:200 新增:201 删除:204 参数有误:400 服务器出错:500 5.响应数据的格式:json 了解:1.域名:使用专有域名 2.版本:将版本信息放在url地址 3.错误:将错误信息返回 4.在访问api接口时,将和接口相关的其他API接口的地址也在响应数据中返回
Django自定义RestAPI
需求: 设计一套符合RestAPI风格的接口,提供以下5个接口:
1. 获取所有图书数据:GET /books/
2. 新增一本图书数据:POST /books/
3. 获取指定的图书数据(根据id):GET /books/(?P<pk>\d+)/
4. 修改指定的图书数据(根据id):PUT /books/(?P<pk>\d+)/
5. 删除指定的图书数据(根据id):DELETE /books/(?P<pk>\d+)/
DRF框架-RestAPI接口的核心工作
序列化:将模型对象转换为字典或者json的过程,叫做序列化的过程。
反序列化:将客户端传递的数据保存转化到模型对象的过程,叫做反序列化的过程。
核心:
1. 将数据库数据序列化为前端所需要的格式,并返回;
2. 将前端发送的数据反序列化为模型类对象,并保存到数据库中