http 400 bad request状态码解决

时间:2019-10-22 09:36:46   收藏:0   阅读:994

小伙伴在项目实操的过程中,经常会遇见400错误状态码,究竟是哪里出了问题

<ignore_js_op>技术分享图片


对啦,就是csrf_token缺失

CSRF


<ignore_js_op>技术分享图片

防止 CSRF 攻击步骤


在 Flask 项目中解决 CSRF 攻击

在 Flask 中, Flask-wtf 扩展有一套完善的 csrf 防护体系,对于我们开发者来说,使用起来非常简单

在 FlaskForm 中实现校验

app.secret_key = "#此处可以写随机字符串#"

[HTML] 纯文本查看 复制代码
1
2
3
4
5
6
7
<form method="post">   
{{ form.csrf_token() }}   
{{ form.username.label }} {{ form.username }}<br/>   
{{ form.password.label }} {{ form.password }}<br/>  
 {{ form.password2.label }} {{ form.password2 }}<br/>   
{{ form.submit }}
</form>

 


<ignore_js_op>技术分享图片

file:///F:/%E5%B9%BF%E5%B7%9E%E5%B0%B1%E4%B8%9A3%E6%9C%9F/%E7%AC%AC%E5%9B%9B%E9%98%B6%E6%AE%B5%EF%BC%88flask%E6%A1%86%E6%9E%B6%EF%BC%89/day02/%E6%95%99%E6%A1%88/assets/flaskwtf_csrftoken.png
设置完毕,cookie 中的 csrf_token 不需要我们关心,会自动帮我们设置


单独使用

app.secret_key = "#此处可以写随机字符串#"

[Python] 纯文本查看 复制代码
1
2
from flask.ext.wtf import CSRFProtect
CSRFProtect(app)



[HTML] 纯文本查看 复制代码
1
<form method="post">    {{ form.csrf_token }}    ...</form>



[HTML] 纯文本查看 复制代码
1
<form method="post" action="/">    <input type="hidden" name="csrf_token" value="{{ csrf_token() }}" /></form>

 

更多技术资讯可关注:gzitcast

原文:https://www.cnblogs.com/heimaguangzhou/p/11717778.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!