request.form['foo']这种不容错的方法是否更好?
1
cloverstd Mar 22, 2016
request.form['foo'] 如果取不到,会直接抛 403 错误
|
2
tanywei Mar 22, 2016
request.form.get('foo', None)
|
3
zwzmzd Mar 22, 2016
|
4
pppy OP ok 明白了,感谢大家
|
5
glasslion Mar 22, 2016
你自己都说了 request.form['foo']不容错, 所以要看具体使用场景, 需要容错的场景下就用 request.form.get('foo')。 哪种方式更好并不是绝对的。
然而,表单数据来源于用户提交, 经常被用作恶意攻击, 所以要对表单数据做各种合法性检查( csrf, 数据范围...) 另外从用户体验的角度来说, 如果提交表单缺少 必填字段 foo , 那么应该给用户提示 ”缺少 必填字段 foo ...“, 而不是去抛异常。 综上, 在现代 web 开发中,一般使用表单框架 /库来完成上述重复性工作。 例如 django form 或 Flask-WTF 。 直接操作 request.form 请出门左拐 java php 节点 |
6
BOYPT Mar 22, 2016
这本来就是 python dict 的标准接口啊,不用扯到 web 的容错吧
a = {} None == a.get('nope', None) |