为什么要这样做
uri = urlparse(self.request.uri)
if uri.query:
query = parse_qs(uri.query)
try:
query = query['query'][0]
except KeyError, err:
query = ''
而不仅仅是这个
query = self.request.get('query')
?两个代码块之间有什么区别?
答案 0 :(得分:2)
有一些差异。最大的问题是如果密钥query
在uri中出现多次,则第一个版本将返回第一个实例,而第二个版本将返回最后一个实例。
此外,在第二个版本中,如果密钥不存在,您将获得None
而不是''
v1的作者可能不信任webob正确解析他的查询字符串。