我的Flask应用程序中的一个端点具有奇怪的行为,该端点使用带有布尔查询参数的端点,无论我传递给它的内容是什么asfsdfd
,true
或者false
它被认为是真实的。仅将其保留为空可能是错误的。
full_info = request.args.get("fullInfo", default=False, type=bool)
if full_info:
# do stuff
似乎任何输入都被认为是真实的。有什么办法可以使用Flask定义类型的预期方式进行此工作,还是我需要接受一个字符串并进行比较?
这是预期的,因为查询字符串是实际字符串,因此,无论字符串是什么,当您获得它时,如果它都不为空,则为true。如:
>>>bool('False')
True
如果要获取布尔值,则必须进行字符串比较。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句