python/django: {% csrf_token %}

csrf_token 是为了防止csrf(跨站请求伪造),防止黑客盗用你存在网站(cookie)上的账户密码和信息

具体做了什么:
在渲染模板时,django会把 {% csrf_token %} 替换成一个

<input type=“hidden”, name=‘csrfmiddlewaretoken’ value=服务器随机生成的token>元素。

在提交表单的时候,会把这个token给提交上去。

django默认启动 'django.middleware.csrf.CsrfViewMiddleware’中间件, 这个中间件就是来验证csrf_token的。如果没有加csrf_token,就会出错。
————————————————
版权声明:本文为CSDN博主「bigdaddy_maybe」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/bigdaddy_maybe/java/article/details/82747274


1、不推荐禁用掉 django 中的 CSRF。

2、我们可以再 html 页面的form表单中添加 csrf_token,带着表单的请求一起发送到服务器去验证。

<form action="{% url 'logout' %}" method="POST">
    {% csrf_token %}
    <button class="logout-btn" type="submit">退出</button>
</form>

  

相关学习资料:

https://www.cnblogs.com/ln-qiqi/p/10523963.html

https://www.cnblogs.com/mengbin0546/p/9966431.html

猜你喜欢

转载自www.cnblogs.com/zhangym118/p/12680495.html