form未添加csrf令牌,导致出现400Bad Request错误

149 阅读1分钟

原因:

flask程序在app.py里面使用了flask_wtf模块的CSRFProtect来保护表单免受CSRF威胁。默认情况下对所有视图启用了CSRF保护。但是部分模板(base模板)中没有表单,所以没有添加csrf令牌,从而导致了错误。 1684979513035.jpg

第一种解决办法

在提交数据的表单处,添加CSRF令牌。如下图 image.png

第二种解决办法

设置默认禁用所有的视图CSRF保护 image.png

第三种解决办法

不需要提交个人数据的form表单,使用exempt装饰器修饰。还没有遇到,遇到案例来补充。

参考文章:baijiahao.baidu.com/s?id=169567…