请教个关于 flask-wtf 的问题

2014-07-11 20:40:57 +08:00
 forreal
第一个是页面添加了{{ csrf_token() }},并且post给后端后,将这个token和服务器端的token比对,但是服务器端的token如何获取呢?也是csrf_token()吗?我还看到api里有一个generate_csrf()。是用generate_csr函数获取服务器端token吗?还是用api里的另一个函数validate_csrf()来验证token?

第二个问题是 RecaptchaField是验证码吗?我试了一下没有验证码图片啊。是我理解错了吗?
顺便求一个flask验证码的扩展。

在此多谢各位的回答
6014 次点击
所在节点    Python
9 条回复
casparchen
2014-07-11 21:09:11 +08:00
session['csrf_token']
casparchen
2014-07-11 21:13:08 +08:00
另外, 如果你用flask-WTF的话,是用不着你自己去做这个验证的吧
forreal
2014-07-11 23:51:41 +08:00
@casparchen 只想用csrf保护,其它表单想自己写
xxr3376
2014-07-11 23:58:54 +08:00
@forreal RecaptchaField是用的Google的reCaptcha服务,现在在国内很有可能被墙了所以没法用。以及你需要去reCaptcha申请一个公私钥才能用。
bcxx
2014-07-12 00:06:30 +08:00
@forreal 那你不能直接自己实现一个 csrf 么?为啥还要用 flask-wtf(不是看中 wtforms 么?

顺便帮你 @lepture 他是现在的维护者
tokki
2014-07-12 00:15:01 +08:00
其实wtf的作用就是高效率,如果你要自己去控制csrf,自己去做验证码,用wtf的意义已经减半了
自己实现一个csrf也很简单,flask官方就有一个例子,自己搜下啦
forreal
2014-07-12 00:17:15 +08:00
@xxr3376 原来如此
forreal
2014-07-12 00:19:47 +08:00
@bcxx
@tokki
也对哈,刚接触flask,看到有个教程用的wtf。
lepture
2014-07-21 22:04:50 +08:00
csrf and forms should be together.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/122208

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX