在Python和GAE中,我想问一下如何在url中获取查询字符串的参数。 据我所知,query_string部分返回“?”之后的所有部分。在网址中。所以我要做的是将查询字符串拆分为“&”,并使用变量。 有没有其他方便的方法来管理查询字符串? 你通常怎么做?
str_query = self.request.query_string
m = str_query.split('&')
a = m[0]
b = m[1]
c = m[2]
这样做,如果query_string没有任何值,它就会抛出错误:
IndexError: list index out of range
答案 0 :(得分:18)
你不需要复杂化。您可以使用以下命令检索所有GET参数:
self.request.get('var_name')
或者如果您想在一个列表中检索它们,您可以使用:
self.request.get_all()
您可以在请求类here上找到更多信息。
答案 1 :(得分:0)
如果要迭代请求的所有参数,您应该执行以下操作:
for argument in self.request.arguments():
values = self.request.get_all(argument)
# do something with values (which is a list)
或者,您可以构建自己的dict
包含所有数据:
params = {arg: self.request.get_all(arg) for arg in self.request.arguments()}