上一页 1 2 3 4 5 6 7 8 9 ··· 13 下一页
摘要: 一、同源策略 #同源策略限制了从同一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的重要安全机制。 #用大白话说,登陆了淘宝,服务器会把cookie发送给客户端,此时客户端打开了不法网址,如果这个不法网址可以访问淘宝,那么不法网址可以冒充客户端为所欲为 #如果两个 阅读全文
posted @ 2019-07-29 14:22 pdun 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 一、django缓存的几种方式及配置 配置缓存,在Django项目的settings.py中配置 1、缓存至内存(默认) CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', 阅读全文
posted @ 2019-07-29 11:02 pdun 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 不使用drf视图 #在下面的这些代码中,存在很多代码重复 from rest_framework.views import APIView from app01.models import * from app01.mySer import * from django.http import Jso 阅读全文
posted @ 2019-07-27 22:28 pdun 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 源码分析 1 在调用request.data时,才进行解析,由此入手 @property def data(self): if not _hasattr(self, '_full_data'): self._load_data_and_files() return self._full_data 2 阅读全文
posted @ 2019-07-27 09:47 pdun 阅读(356) 评论(0) 推荐(0) 编辑
摘要: 封装简介 隐藏数据 property装饰器 class People: def __init__(self,name,weight,height): self.name=name self.weight=weight self.height=height # @property def bmi(se 阅读全文
posted @ 2019-07-26 20:04 pdun 阅读(766) 评论(0) 推荐(0) 编辑
摘要: 官方描述:不同对象可以响应(调用)同一个方法,产生不同的结果 (对猫,狗,发出吃的命令时,猫去吃鱼,狗去吃骨头) 好处:提高程序的扩展性 具体的:父类建立一套规范,无需实现内部的方法,子类按照这套规范实现各自的功能 鸭子类型 python不推荐强制限制语法,推荐鸭子类型,(不使用abc强制要求必须有 阅读全文
posted @ 2019-07-26 19:52 pdun 阅读(604) 评论(0) 推荐(0) 编辑
摘要: 一、继承简介 #继承与抽象(先抽象再继承) 抽象:抽取类似或比较像的部分, 它的作用是划分类别,抽象只是分析过程中的一种技巧,通过抽象可以得到类 继承:是基于抽象的结果, 派生:子类拥有与父类不同的内容 覆盖:子类与父类拥有完全相同的名称 二、方法的重写 class Animal: def __in 阅读全文
posted @ 2019-07-26 19:46 pdun 阅读(740) 评论(0) 推荐(0) 编辑
摘要: 自定义,也是源码的基本逻辑 ''' {'ip1':[时间1 ,时间2], 'ip2':[时间1, ], } #(1)取出访问者ip # (2)判断当前ip不在访问字典里,添加进去,并且直接返回True,表示第一次访问,在字典里,继续往下走 # (3)循环判断当前ip的列表,有值,并且当前时间减去列表 阅读全文
posted @ 2019-07-26 12:35 pdun 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 源码与认证组件很类似,这里只给出关键点 def check_permissions(self, request): for permission in self.get_permissions(): if not permission.has_permission(request, self): s 阅读全文
posted @ 2019-07-26 10:15 pdun 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 认证源码分析 #1、APIAPIView #进来 #2、APIAPIView类中有很多方法,找到dispatch方法 ,请求来了肯定要走dispatch def dispatch(self, request, *args, **kwargs): request = self.initialize_r 阅读全文
posted @ 2019-07-25 20:36 pdun 阅读(344) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 13 下一页