Django Rest Framework

简介:

新的一年启程,大家又投入到紧张的学习和工作中,作为一个互联网人必须时刻紧跟科技发展的脚步。对于大火的 Python 编程语言我们怎么能错过,我们【51Reboot】这就为大家带来新年的第一堂 Python 免费公开课。

主题:Django Rest Framework

大纲

  • Django-rest-framework是什么?
  • 序列化
  • 请求和响应
  • 类视图
  • 认证
  • 权限

主讲师:Monkey

  • 3 年 Python 语言开发经验
  • 从事自动化运维相关工作
  • Python & Gopher 热衷粉
    ##视频版

链接:https://pan.baidu.com/s/1elpgOu 密码:xi3d

Django rest framework 是什么?

Django REST 框架是一个用于构建 Web API 的功能强大且灵活的工具包。

特点:

  • Web 浏览器 API
  • 身份认证策略及权限
  • 序列化
  • 函数视图及类视图
  • 统一的异常处理
  • 自动生成 API 文档信息
  • 文档和良好的社区支持
  • .......

要求

Python (2.7, 3.2, 3.3, 3.4, 3.5, 3.6)

Django (1.10, 1.11, 2.0)

Web 浏览器 API

Django Rest Framework

使用场景

前后端分离

序列化

  • serializers.Serializer
  • serializers.ModelSerializer
  • serializers.HyperlinkedModelSerializer

请求

  • request.POST
    Only handles form data. Only works for 'POST' method.
  • request.data

    Handles arbitrary data. Works for 'POST', 'PUT' and 'PATCH' methods.

    响应

  • Response
    
    data: 响应的序列化数据。

status:响应的状态码。默认为200.另请参阅状态代码

......


* status

HTTP_200_OK
HTTP_403_FORBIDDEN
HTTP_404_NOT_FOUND
HTTP_500_INTERNAL_SERVER_ERROR
......

## 类视图

class-based-views

* APIView
* mixins
* generics

## 认证

* 查询 Token

curl -X post http://127.0.0.1/api-token-auth/ -d username=monkey -d password=monkey123

* Token 登录认证

authentication_classes = (TokenAuthentication, )

## 权限

权限列表

* AllowAny
* IsAdminUser
* IsAuthenticated
* IsAuthenticatedOrReadOnly
* DjangoMOdelPermissions
* DjangoModelPermissionsOrAnonReadOnly
* DjangoObjectPermissions

权限认证

permission_classes = (IsAuthenticated,)


## 验证权限

curl http://127.0.0.1/accounts/ -H 'Authorization: Token 48386f45403c308ba1b2575c546f498c5580efed'


## 学习资料

官方网站

www.django-rest-framework.org/ (http://www.django-rest-framework.org/)


本文转自 xjtuhit 51CTO博客,原文链接:http://blog.51cto.com/51reboot/2077412

相关文章
|
4月前
|
JSON API 网络架构
Python Web 开发: 解释 Django REST framework 的作用,以及如何定义序列化器(Serializer)?
Python Web 开发: 解释 Django REST framework 的作用,以及如何定义序列化器(Serializer)?
|
7月前
|
API 网络架构 开发者
深入探索 Django Rest Framework
深入探索 Django Rest Framework
55 0
|
9月前
|
数据库 网络架构 Python
18-Django REST framework-使用Django开发REST 接口
18-Django REST framework-使用Django开发REST 接口
|
API 网络架构 Python
【Django | 开发】 Rest Framework 开放API
【Django | 开发】 Rest Framework 开放API
【Django | 开发】 Rest Framework 开放API
|
网络架构 Python
|
JSON 文字识别 前端开发
Django REST项目实战:在线中文字符识别
Django REST项目实战:在线中文字符识别
119 0
Django REST项目实战:在线中文字符识别
|
JSON API 数据库
Python利用Django 构建Rest Api: 快速入门教程
Python利用Django 构建Rest Api: 快速入门教程
898 0
Python利用Django 构建Rest Api: 快速入门教程
|
XML JSON 缓存
Django-rest-framework 是个什么鬼?
我们首先来回顾一下传统的基于模板引擎的 django 开发工作流: 绑定 URL 和视图函数。当用户访问某个 URL 时,调用绑定的视图函数进行处理。 编写视图函数的逻辑。视图中通常涉及数据库的操作。 在视图中渲染 HTML 模板,返回 HTTP 响应。 其实,基于 django-rest-framework 的 RESTful API 的开发,过程是完全类似的: 绑定 URL 和视图函数。当用户访问某个 URL 时,调用绑定的视图函数进行处理。 编写视图函数的逻辑,根据 HTTP 请求类型,对请求的资源进行相应操作,这个过程通常涉及数据库的操作。 使用约定的资源描述格式(例如 XML 或
120 0