摘要:
补充知识:【与跨域无关】 1、简单请求与复杂请求区别? 复杂请求会先发出一个预请求,我们也叫预检,OPTIONS请求,简单请求则没有2、如何区分简单请求与复杂请求?简单请求:HTTP方法是下列方法之一 HEAD,GET,POSTHTTP头信息不超出以下几种字段 Accept,Accept-Langu 阅读全文
摘要:
补充知识:【与跨域无关】 1、简单请求与复杂请求区别? 复杂请求会先发出一个预请求,我们也叫预检,OPTIONS请求,简单请求则没有2、如何区分简单请求与复杂请求?简单请求:HTTP方法是下列方法之一 HEAD,GET,POSTHTTP头信息不超出以下几种字段 Accept,Accept-Langu 阅读全文
摘要:
解析过程? 前端请求的数据格式例如Json解析成Python才能用。本质是对请求体中的数据进行解析。 解析原理? 使用请求头中的Accept和ContentTypeAccept是告诉对方我能解析什么格式的数据ContentType是告诉对方我给你的是什么样的数据类型拿到请求的ContentType, 阅读全文
摘要:
回忆一下... Django分页器的使用步骤: 1. 实例化分页器对象 2. 调用分页方法去分页queryset 3. 把分页好的数据序列化返回 4. 带着上一页下一页链接的响应 rest_framework的PageNumberPagination用法: 在项目目录下新建utils/paginat 阅读全文
摘要:
频率组件源码: APIView的initial方法:(执行APIView的as_view方法,执行APIView的dispatch方法,执行APIView的initial方法) APIView的check_throttles方法 跟认证组件和权限组件一样。throttle是配置的每个频率控制类的实例 阅读全文
摘要:
权限组件源码: APIView的initial方法:(执行APIView的as_view方法,执行APIView的dispatch方法,执行APIView的initial方法) APIView中的check_permissions方法, self.get_permissions()=[ permis 阅读全文
摘要:
用户登录成功后,生成一个随机字符串和用户绑定,存在用户表里,这个随机字符串就叫token用户每次请求都带这个token,来判断用户是否登录 源码流程: APIView中的dispatch方法 做分发之前先执行initial方法。把版本信息,认证,权限等信息放入request中 只有认证通过,并且有权 阅读全文
摘要:
为什么要进行版本控制? 新旧版本的接口都要维护,发请求的时候带上版本号会返回不同的结果,例如bootstrap2.0 、3.0等都有文档 版本控制组件源码 as_view调用View的dispatch方法,dispatch被重写了,所以调用APIView的dispatch方法 self是DemoVi 阅读全文
摘要:
当一个视图有list、create、retrieve、update、destroy所有的功能,路由组件可以用DRF自带的routers简写 项目总路由:pro/urls.py from django.contrib import admin from django.urls import path, 阅读全文
摘要:
APIView与View区别:重写as_view(): csrf_token豁免重写dispatch(): 封装原生request在Request类的对象里,request.GET变成request.query_paramsrequest.POST变成request.data(注意不是seriali 阅读全文
|