1、学习思路

1、web开发的两种模式

2、Restful API接口设计风格

3、利用Django基础自定义一套Restful API接口

4、明确一下Restful API接口实现时主要工作

5、DRF框架的使用。

目的​:利用DRF框架快速的实现RestAPI接口的设计

2、web开发的两种模式

2.1前后端不分离

前后端不分离​:前端看到的效果是由后端进行控制,由后端进行模板渲染,给客户端返回渲染之后完整的页面内容。

使用​:适合于纯网页的应用

优势​:利于SEO(搜索引擎优化)

在前后端分离的应用模式中 ,前端与后端的耦合度相对较低。

2.2前后端分离

前后端分离​:后端值返回前端你所需的数据,至于数据怎么展示,由前端自己控制。

使用​:可以适用于不同的客户端

劣势​:不利于SEO(搜索引擎优化)

在前后端分离的应用模式中,我们通常将后端开发的每个视图都称为一个​接口​,或者​API​,前端通过访问接口来对数据进行增删改查。

3.Restful API接口设计

前后端分离开发中被广泛采用的一种API接口设计风格

3.1关键点

1、URL地址尽量使用名词,不要使用动词。名词尽量使用复数。

2、请求URL地址时,采用不同的请求方式执行不同的操作(获取信息GET;新增POST;修改PUT;删除DELETE)

path只是将更改的内容发送,put将更改后所有的内容都发送过去。

3、过滤参数可以放在查询字符串中。

4、响应数据的返回&响应状态码


  • GET /collection:返回资源对象的列表(数组)
  • GET /collection/resource:返回单个资源对象
  • POST /collection:返回新生成的资源对象
  • PUT /collection/resource:返回完整的资源对象
  • PATCH /collection/resource:返回完整的资源对象
  • DELETE /collection/resource:返回一个空文档

状态码

说明

200

获取或修改成功

201

新增成功

204

删除成功

404

资源不存在

400

客户端请求有误

500

服务器错误

5、响应数据的格式:json数据

域名、版本、错误处理、超媒体了解即可。

4.利用Django基础自定义一套Restful API接口

需求​:

1、自定义Restful API接口,提供以下五个接口:

1)获取所有的图书的信息;

2)新增一本图书的信息;

3)获取指定的图书的信息(根据ID);

4)修改指定的图书的信息(根据ID);

5)删除指定的图书的信息(根据ID)。

返回json数据JsonResponse()里面可以传入一个列表,会自动转换为字典,但是,默认会报错,我们要将safe这个参数设置为False,就可以传入列表了。

DRF框架学习(一)_api接口