Python3 Flask bool查询参数始终为true

Curunir

我的Flask应用程序中的一个端点具有奇怪的行为,该端点使用带有布尔查询参数的端点,无论我传递给它的内容是什么asfsdfdtrue或者false它被认为是真实的。仅将其保留为空可能是错误的。

full_info = request.args.get("fullInfo", default=False, type=bool)
if full_info:
    # do stuff

似乎任何输入都被认为是真实的。有什么办法可以使用Flask定义类型的预期方式进行此工作,还是我需要接受一个字符串并进行比较?

德米特里·别利亚科夫

这是预期的,因为查询字符串是实际字符串,因此,无论字符串是什么,当您获得它时,如果它都不为空,则为true。如:

>>>bool('False')
True

如果要获取布尔值,则必须进行字符串比较。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章