Django REST framework 简介

不重复造轮子,是开发人员共同的哲学道理。在使用 Python 开发 RESTful Web API 时,就有一个大名鼎鼎的轮子 Django REST framework,这一节我们就来简单了解一下 Django REST framework。
图片描述

Django REST framework 一听就是和著名的 Python web 开发框架 Django 有很大的关系,这个框架是由 Tom Christie 在 Django 框架基础之上二次开发的开源项目,是用来帮助开发者快速构建 RESTful Web API 的强大而又灵活的工具。

1. Django REST framework 的特点

  • 提供了定义序列化器 Serializer 的方法,可以快速根据 Django ORM 或者其它库自动序列化/反序列化;

  • 提供了丰富的类视图、Mixin 扩展类,简化视图的编写;

  • 丰富的定制层级:函数视图、类视图、视图集合到自动生成 API,满足各种需要;

  • 多种身份认证和权限认证方式的支持;

  • 内置了限流系统;

  • 直观的 API web 界面;

  • 可扩展性,插件丰富

2. Django REST framework 构建原理

Django REST framework 是在 Django 框架的基础上进行扩充,从而可以帮助我们简化部分的代码编写,大大提高 RESTful Web API 的开发速度。

  1. 在序列化与反序列化时,虽然操作的数据不尽相同,但是执行的过程却是相似的,也就是说这部分代码是可以复用简化编写的。
  2. 在开发 REST API 的视图中,虽然每个视图具体操作的数据不同,但增、删、改、查的实现流程基本套路化,所以这部分代码也是可以复用简化编写的:
    • :校验请求数据 -> 执行反序列化过程 -> 保存数据库 -> 将保存的对象序列化并返回
    • :判断要删除的数据是否存在 -> 执行数据库删除
    • :判断要修改的数据是否存在 -> 校验请求的数据 -> 执行反序列化过程 -> 保存数据库 -> 将保存的对象序列化并返回
    • :查询数据库 -> 将数据序列化并返回

Django REST framework 相关资料:

3.小结

本节主要带领大家了解了一下 Django REST framework 框架。接下来我们将使用这套框架,开发一套属于自己的 RESTful Web。