0

我是GAEPython新手。我无法将我的 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

4

2 回答 2

2

\d只匹配十进制数字。你的意思是\w改用吗?此外,没有方括号。

于 2012-08-10T16:15:36.213 回答
0

您还可以选择传递 urlencoded 数据,例如 yourapp.appspot.com/papers?keyword=helloworld

并在您的处理程序中使用:keyword = self.request.GET.get('keyword') 或 keyword = self.request.POST.get('keyword') 取决于您的请求方法。

您还可以在 AJAX 帖子的正文中传递 json 数据,并使用 json 将其反序列化为 python 数据。为了验证这种数据,我推荐 voluptuous。

于 2012-08-10T16:35:31.253 回答