【发布时间】:2017-08-17 18:06:32
【问题描述】:
TL;DR 我需要保护我的表单免受 CSRF 攻击,我想将 ReactJS 用于前端,将 Flask/Flask-WTF 用于后端。
我正在重构一个使用 Python、Flask 和 Flask-WTF 构建的表单的网站,我想通过 PyPugjs 将 React 用于前端,而不是 Jinja2。我正在使用 Flask-WTF 来渲染表单,它负责处理 CSRF 令牌等。我知道如何使用 React 制作表单,但如何获得 CSRF 保护?
现在我的表单渲染看起来像这样:(使用 Pug)
mixin render_form(form, id='', action='Submit')
form(method='POST', action='', id=id)
=form.csrf_token
each field in form
fieldset
if field.errors
each error in field.errors
.notification.error
#{error}
#{field(placeholder=field.label.text)}
button(type='submit') #{action}
【问题讨论】:
-
问题应该是“如何使用 React + Python 添加输入字段”。 CSRF 保护只是一个提供随机值的字段,然后由服务器验证。
标签: javascript reactjs flask-wtforms csrf-protection