像这样的问题:
...除了 WSGI。如何区分“无值”查询参数和不存在的查询参数。
根据此文档,此代码:
value = self.request.get('n')
..当查询参数不存在时返回空字符串。如果查询参数存在但没有值,它将返回什么,例如查询字符串?n
?
我正在尝试对此进行测试,但老实说,我在使用 GAE 时遇到了麻烦。
像这样的问题:
...除了 WSGI。如何区分“无值”查询参数和不存在的查询参数。
根据此文档,此代码:
value = self.request.get('n')
..当查询参数不存在时返回空字符串。如果查询参数存在但没有值,它将返回什么,例如查询字符串?n
?
我正在尝试对此进行测试,但老实说,我在使用 GAE 时遇到了麻烦。
如您链接的该文档中所述:
获取(参数名称,默认值='')
指定default_value
参数:
self.request.get('n', None)
None
如果参数n
不存在(例如?foo=bar
) ,将返回。如果参数存在但未指定值,您将得到一个空字符串(例如?n=&foo=bar
)。
我建议不要使用该self.request.get
界面。它是对象周围的薄包装request
,此时主要是为了与 webapp1 应用程序兼容。相反,self.request.GET
用于查询参数和self.request.POST
请求正文参数。它们都充当字典,因此如果键不存在,对它们进行索引self.request.GET['foo']
将引发 a KeyError
,而如果键不存在,则调用self.request.GET.get('foo', default)
将返回default
。