为什么使用WTForms而不是仅使用HTML发布


问题内容

最近,我很好奇使用WTForms向Flask提交数据的好处是什么?纯HTML,JavaScript或引导表单似乎更易于样式设置和提交。另外,您可以省略创建WTForms类所需的所有python代码。有人可以解释会有什么好处吗?


问题答案:

我可以说这CSRF protection是最大的原因之一,但是有很多原因会导致人们在纯HTML表单上使用WTFroms。

  • 开箱即用的CSRF保护
  • 开箱即用的表单验证
  • WTForms是作为类来的,所以所有的好处都来自对象形式。

基本上,如果您的项目的外观形式很多相同,而差异很小,则WTForms会很有帮助。

然后就可以使用验证了,您可以对电子邮件和所有其他类型的数据使用简单的验证,并且它们就在那里了,无需费心编写自己的验证器并继续维护它们。

CSRF是owasp十大攻击之一[1],因此为此提供良好的保护确实很重要。