07 2022 档案
摘要:1 缓存的类型 1.1 数据库缓存 CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.db.DatabaseCache', 'LOCATION': 'my_cache_table', 1.2 文件缓存 CACHES = {
阅读全文
摘要:1 认证原理 1 jwt分三段式:头.体.签名 (head.payload.sgin) 2 头和体是可逆加密,让服务器可以反解出user对象;签名是不可逆加密,保证整个token的安全性的 3 头体签名三部分,都是采用json格式的字符串,进行加密,可逆加密一般采用base64算法,不可逆加密一般采
阅读全文
摘要:权限 权限可以用来校验用户有没有权限访问固定的资源,权限会在认证之后进行执行,我们可以自定义权限的认证逻辑 1.1自定义权限 # app_auth.py from rest_framework.permissions import BasePermission class Mypermission(
阅读全文
摘要:1 路由 1.1自动生成路由(视图类需要继承ViewSetMixin类) urlpatterns = [ path('api/book/',views.BookView.as_view({'get':'list','post':'create'})), re_path(r'^api/book/(?P
阅读全文
摘要:视图:restframework中提供了两个视图基类,APIView和GenericAPIView 那么这两个视图基类有什么区别呢,本质上是差不多,但是GenericAPIView在APIView的基础上封装了一层, 这使得我们在实现相同功能的情况下书写的代码更少 1 基于APIView写接口 #
阅读全文
摘要:1.请求 如果的我们的视图类继承了APIView的话,我们的前端传递的request参数会被二次封装,我们可以通过源码来进行分析。 也因此我们在使用request时会比原来方便很多,比如: 1.1 request.data中包含了前端以三种编码方式传递来的参数,django原生的request并不会
阅读全文
摘要:1序列化组件介绍 1.1 序列化,序列化器会把模型对象转换成字典,经过response以后变成json字符串 1.2 反序列化,把客户端发送过来的数据,经过request以后变成字典,序列化器可以把字典转成模型 1.3 反序列化,完成数据校验功能 2.序列化组件的简单使用 2.1 先写一个序列化类,
阅读全文
摘要:1.web开发模式 web开发模式主要有两种 1.1 前后端混合开发(前后端不分离):也就是一个人同时完成前端代码和后端逻辑的书写,这种开发模式的好处是可以使用后端框架提供的模板语法较为简单的完成网页的搭建 1.2 前后端不分离 :后端人员专注于写后端的接口,返回json,xml格式的数据 # xm
阅读全文
摘要:前言 在Python 3.5(含)以前,字典是不能保证顺序的,键值对A先插入字典,键值对B后插入字典,但是当你打印字典的Keys列表时,你会发现B可能在A的前面。 但是从Python 3.6开始,字典是变成有顺序的了。你先插入键值对A,后插入键值对B,那么当你打印Keys列表的时候,你就会发现B在A
阅读全文