随笔分类 - DRF
摘要:jwt的签发和认证 保证安全 签发--登陆过程: 1、用基本信息公司信息存储json字典,采用base64算法得到 头字符串 2、用关键信息存储json字典,采用base64算法得到 荷载字符串,过期时间,用户id,用户名 3、用头、体加密字符串通过加密算法+秘钥加密得到 签名字符串,拼接成toke
阅读全文
摘要:JWT认证 在用户注册或登录后,我们想记录用户的登录状态,或者为用户创建身份认证的凭证。我们不再使用Session认证机制,而使用Json Web Token(本质就是token)认证机制。 Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准
阅读全文
摘要:概述 在公司里,前端和后端是两拨人写,后端人,需要写出接口文档,给前端用,前端按照接口文档去开发 具体格式可以参照:https://open.weibo.com/wiki/2/comments/show 如何写 第一种:使用word或者md文档编写 纯手写--很多公司这么用 第二种:第三方平台录入
阅读全文
摘要:RABC概念 RBAC 是基于角色的访问控制(Role-Based Access Control )在 RBAC 中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。这样管理都是层级相互依赖的,权限赋予给角色,而把角色又赋予用户,这样的权限设计很清楚,管
阅读全文
摘要:步骤 第一步:写一个函数 from rest_framework.views import exception_handler # 默认没有配置,出了异常会走它 from rest_framework.response import Response def common_exception_han
阅读全文
摘要:分页概述 5个接口中,只有查询所以,涉及到分页。 pc端是下一页,下一页的形式;如果在app、小程序中展示的形式是下拉加载下一个的形式 分页默认提供了三种方式:PageNumberPagination、LimitOffsetPagination、CursorPagination 导入 from re
阅读全文
摘要:步骤 第一步:导入内置排序类 from rest_framework.filters import OrderingFilter 第二步:在视图类中配置(必须继承GenericAPIView) class BookView(GenericViewSet, ListModelMixin): query
阅读全文
摘要:频率 概念: 认证、权限都通过以后,限制某个接口的访问频率,一般根据ip或者用户限制 使用步骤 第一步: 写一个类,继承SimpleRateThrottle 重写类属性:scope,和get_cache_key方法 get_cache_key返回什么,就以什么做限制,scope配置文件中要用 第二步
阅读全文
摘要:操作步骤 第一步: 写一个类,继承BasePermission,重写has_permission,判断如果有权限,返回True,如果没有权限,返回False 第二步:局部使用和全局使用 局部使用 class BookDetailView(GenericViewSet, CreateModelMixi
阅读全文
摘要:登录功能 models.py from django.db import models # Create your models here. class User(models.Model): username = models.CharField(max_length=32) password =
阅读全文
摘要:五个接口中,只有获取所有需要过滤,其他不需要 内置过滤 导入 from rest_framework.filters import SearchFilter 在视图类中写 from .models import Book from .serizlizer import BookSerizlizer
阅读全文
摘要:继承ViewSetMixin类,路由写法 只要继承ViewSetMixin 及其子类,路由写法就变了 视图类:继承ViewSetMixin,路由写法变了 >而且视图类中的方法不一定写成get,post..,可以随意命名,只不过定义路由时写法变成了path('test/', views.TestVie
阅读全文
摘要:APIView from rest_framework.views import APIView 类属性 renderer_classes, parser_classes get方法,post方法,delete方法写法跟之前的View一样,只不过request对象变成了新的request丢下,比之前
阅读全文
摘要:请求 请求指的就是Request类的对象也就是新的request对象 from rest_framework.request import Request 需掌握 1、__getattr__ 2、request.data 3、request.query_parmas >self._request.G
阅读全文
摘要:ModelSerializer模型类序列化器 以后使用ModelSerializer跟表模型做绑定这个用的多,不需要重写update和create方法了 class BookSerializer2(serializers.ModelSerializer): class Meta: model = B
阅读全文
摘要:序列化器介绍 序列化器其实就是一个类 作用 1、序列化,序列化器会把模型对象(qs,book)转换成字典,经过response以后变成json字符串 2、反序列化,把客户端发(前端)送过来的数据,经过request以后变成字典(data),序列化器可以把字典转成模型-->存到数据库中 3、反序列化,
阅读全文
摘要:View路径 from django.views.generic.base import View # 最真的路径 from django.views.generic import View # 因为在generic包的init里注册了 from django.views import View #
阅读全文
摘要:执行流程 cbv路由写法:path('test/', views.TestView.as_view()) 》第二个参数是函数内存地址 》as_view()执行完,也是一个内存地址 》闭包函数view的内存地址 》当请求来了,路由匹配成功--》执行view(request),传入当次请求的reques
阅读全文
摘要:DRF介绍 全称Django REST framework 核心思想:缩减编写api接口的代码 Django REST framework是一个建立在Django基础之上的Web 应用开发框架,可以快速的开发REST API接口应用。在REST framework中,提供了序列化器Serialzie
阅读全文