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

相关文章
|
5天前
|
中间件 API 网络架构
Django后端架构开发:从匿名用户API节流到REST自定义认证
Django后端架构开发:从匿名用户API节流到REST自定义认证
8 0
|
3月前
|
存储 JSON 数据库
Django REST framework关联序列化器详解:掌握复杂关系的序列化与反序列化艺术
Django REST framework关联序列化器详解:掌握复杂关系的序列化与反序列化艺术
|
3月前
|
JSON API 数据格式
Django REST framework序列化器详解:普通序列化器与模型序列化器的选择与运用
Django REST framework序列化器详解:普通序列化器与模型序列化器的选择与运用
|
3月前
|
安全 API 数据安全/隐私保护
Django REST framework安全实践:轻松实现认证、权限与限流功能
Django REST framework安全实践:轻松实现认证、权限与限流功能
|
3月前
|
JSON 搜索推荐 数据库
Django REST framework数据展示技巧:分页、过滤与搜索的实用配置与实践
Django REST framework数据展示技巧:分页、过滤与搜索的实用配置与实践
|
3月前
|
JSON API 网络架构
Django REST framework视图集与路由详解:深入理解ViewSet、ModelViewSet与路由映射器
Django REST framework视图集与路由详解:深入理解ViewSet、ModelViewSet与路由映射器
|
3月前
|
前端开发 数据管理 API
Django REST framework中GenericAPIView与混入扩展类详解
Django REST framework中GenericAPIView与混入扩展类详解
|
3月前
|
JSON 前端开发 API
Django进阶:DRF(Django REST framework)
Django进阶:DRF(Django REST framework)
|
4月前
|
JSON API 网络架构
Python Web 开发: 解释 Django REST framework 的作用,以及如何定义序列化器(Serializer)?
Python Web 开发: 解释 Django REST framework 的作用,以及如何定义序列化器(Serializer)?
68 0
|
12月前
|
API 网络架构 开发者
深入探索 Django Rest Framework
深入探索 Django Rest Framework
76 0