python csrf token cookie_{% csrf_token %} 原理和作用 (踩坑必看)

简介

在django中我们需要在templates的form中加入{%csrf_token%}这串内容,它的作用是当我们get表单页面时,服务器返回页面的同时也会向前端返回一串随机字符,post提交时服务器会验证这串字符来确保用户是在服务端返回的表单页面中提交的数据,防止有人通过例如jquery脚本向某个url不断提交数据,是一种数据提交的验证机制。

用途

跨站点请求伪造(CSRF)保护

CSRF攻击允许恶意用户使用另一个用户的凭据执行操作,而不需要该用户的知情或同意。

Django内置了对大多数csrf攻击的保护,只要您有启用并使用在适当的情况下。然而,与任何缓解技术一样,也有局限性。例如,可以在全局或特定视图中禁用CSRF模块。只有当你知道自己在做什么时,你才应该这样做。

就是说为了防止你做的网站挂网后被不怀好意的人利用攻击手段篡改了你的请求操作,让服务器执行一些攻击者想要执行的操作以达到某种目的而设立的安全机制。

使用

{%csrf_token%}

注意:必须在form表单内部

使用后无效果的解决方法

一般情况我们使用pycharm创建一个DJango项目时,在项目根目录下的同名文件夹的setting.py文件里我们通常都能看到有一条设置

'django.middleware.csrf.CsrfViewMiddleware'

28b65dc25e335053d32b42912bb1225f.png

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值