我一直坚持如何使用GAE,Python,webapp2检索URL中的参数。
在我的main.py文件中,我有一个构建url的模板,如下所示:
.../products?p=12345
在app.yaml中,我使用以下命令发送到products.py:
- url: /products.*
script: products.application
在products.py中我有不同的请求处理程序,使用上面的URL,用户被路由到第一个:
application = webapp2.WSGIApplication([
('/products', ProductsPage),
('/products-save', SaveProduct),
('/products-find', FindProduct),
('/products-delete', DeleteProduct),
('/products-search', SearchProducts),
], debug = True)
在ProductsPage中,我执行以下操作:
class ProductsPage(webapp2.RequestHandler):
def get(self):
p1 = self.request.get('p')
但是对于p1,我只得到一个空字符串。
我忽略了什么想法?
提前致谢!
答案 0 :(得分:0)
试试这个:
p1 = self.request.GET['p']
它将返回传递给请求的p
的最后一次出现,默认情况下request.get()
仅返回第一次出现p
,您可能已经多次从您的某处传递请求。
或者尝试添加 allow_multiple = True ,它会在列表中返回所有 p
值:
p1_list = self.request.get('p', allow_multiple=True)
for p1 in p1_list:
... check the value inside this list ...