Google App Engine - 请求类query_string

Hoa*_*ham 6 python google-app-engine

在Python和GAE中,我想问一下如何在url中获取查询字符串的参数.据我所知,query_string部分返回"?"之后的所有部分.在网址中.所以我要做的是用"&"拆分查询字符串,并使用变量.有没有其他方便的方法来管理查询字符串?你通常怎么做?

str_query = self.request.query_string
m = str_query.split('&')
a = m[0] 
b = m[1]
c = m[2]
Run Code Online (Sandbox Code Playgroud)

这样做,如果query_string没有任何值,它会抛出一个错误:

IndexError: list index out of range
Run Code Online (Sandbox Code Playgroud)

rog*_*pvl 18

你不需要复杂化.您可以使用以下命令检索所有GET参数:

self.request.get('var_name')
Run Code Online (Sandbox Code Playgroud)

或者,如果您想在一个列表中检索它们,您可以使用:

self.request.get_all()
Run Code Online (Sandbox Code Playgroud)

您可以在此处找到有关Request类的更多信息.

  • 没有参数,self.request.get_all()实际上不起作用; 它不返回所有查询变量,只返回特定变量的所有值.要获得完整列表,您需要使用self.request.arguments(). (4认同)