我是 GAE 和 Python 新手。我无法将我的HTML页面中的字符串参数传递给Python函数(它适用于整数参数)。
我有以下网址:
http://localhost:8094/papers/xyz
在main()
我有:
app = webapp2.WSGIApplication([
('/', homepage.ViewHomePage),
('/about', aboutpage.ViewAboutPage),
('/papers/([\w]+)', PaperList)
],
config=config,
debug=True)
该功能定义为:
class PaperList(BaseHandler):
def get(self, param1):
在app.yaml
我有:
- url: .*
script: main.app
这不起作用。但是,如果我只是将参数从字符串更改为整数,那么它可以工作。 (我还没有对参数做任何事情,只是希望它接受字符串参数。)
有人可以告诉我必须更改哪些内容以允许它使用字符串参数,并指出文档说明如何通过main()
传递参数的位置?
我正在使用 Python 2.7 。
答案 0 :(得分:2)
\d
仅匹配十进制数字。您的意思是使用\w
吗?此外,没有方括号。
答案 1 :(得分:0)
您还可以选择传递urlencoded数据,例如yourapp.appspot.com/papers?keyword=helloworld
并在你的处理程序中获取它: keyword = self.request.GET.get('keyword') 要么 keyword = self.request.POST.get('keyword')取决于您的请求方法。
你也可以在AJAX帖子的主体中传递json数据,并使用json将其反序列化为python数据。为了验证这种数据,我建议性感。