目录 importlib模块 csrf跨站请求伪造 form表单发送 ajax发送 csrf装饰器 auth模块 如何创建超级用户(root) 创建用户 校验用户名和密码是否正确 保存用户登录状态 判断当前用户是否登录 校验原密码是否正确 修改密码 注销 校验用户是否登录 装饰器 如何扩展auth_user表字段 settings源码分析 importlib模块 使用 将需要导入的文件路径 放入 import_module() 里面 即可拿到该路径对应的文件 但是 只能识别到文件 不能识别到文件…
CBV加装饰器 第一种 @method_decorator(装饰器) 加在get上 第二种 @method_decorator(login_auth,name='get') 加在类上 第三种 @method_decorator(login_auth) 加在dispatch上 3.7的要return super().dispatch def login(request): if request.method == 'POST': username = request.POST.get('usern…
前言 CSRF,Cross-site request forgery跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用.他的产生由来是因为浏览器引起的. 比如用户访问A网站,A网站的html代码中有个提交数据,是发往B网站的,B网站受到浏览器发来的请求,实际上已经处理完毕,并且将返回数据发回了.但是这段数据在到达用户浏览器的时候,被浏览器拦截抛弃,这种现象是CSRF的由来. 也有部分人利用CSRF进行…
摘要 Django中间件 csrf跨站请求伪造 一.Django中间件: 什么是中间件? 官方的说法:中间件是一个用来处理Django的请求和响应的框架级别的钩子.它是一个轻量.低级别的插件系统,用于在全局范围内改变Django的输入和输出.每个中间件组件都负责做一些特定的功能. 但是由于其影响的是全局,所以需要谨慎使用,使用不当会影响性能. 说的直白一点中间件是帮助我们在视图函数执行之前和执行之后都可以做一些额外的操作,它本质上就是一个自定义类,类中定义了几个方法,Django框架会在请求的特…
Web框架之Django_09 重要组件(Django中间件.csrf跨站请求伪造)   摘要 Django中间件 csrf跨站请求伪造 一.Django中间件: 什么是中间件? 官方的说法:中间件是一个用来处理Django的请求和响应的框架级别的钩子.它是一个轻量.低级别的插件系统,用于在全局范围内改变Django的输入和输出.每个中间件组件都负责做一些特定的功能. 但是由于其影响的是全局,所以需要谨慎使用,使用不当会影响性能. 说的直白一点中间件是帮助我们在视图函数执行之前和执行之后都可以做…
一.ajax登录示例 新建项目login_ajax 修改urls.py,增加路径 from app01 import views urlpatterns = [ path('admin/', admin.site.urls), path('login/', views.login), path('index/', views.index), ] 修改settings.py,指定static STATIC_URL = '/static/' STATICFILES_DIRS = ( os.path.…
[Django高级之中间件.csrf跨站请求伪造] Django中间件 什么是中间件? Middleware is a framework of hooks into Django's request/response processing. It's a light, low-level "plugin" system for globally altering Django's input or output. -----------------------------------…
第三百一十五节,Django框架,CSRF跨站请求伪造  全局CSRF 如果要启用防止CSRF跨站请求伪造,就需要在中间件开启CSRF #中间件 MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', # 'django.mi…
 全局CSRF 如果要启用防止CSRF跨站请求伪造,就需要在中间件开启CSRF #中间件 MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', # 'django.middleware.csrf.CsrfViewMiddle…
一.什么是中间件 中间件是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出 二.中间件的作用 如果你想修改请求,例如被传送到view中的HttpRequest对象. 或者你想修改view返回的HttpResponse对象,这些都可以通过中间件来实现. 可能你还想在view执行之前做一些操作,这种情况就可以用 middleware来实现. Django默认的中间件:(在django项目的settings模块中,有一个 MIDDLE…