Python无法获得url params

时间:2014-11-06 19:50:45

标签: python python-2.7 url tornado urlparse

我想获取用户提交表单时发送回服务器的URL的参数。但是我收到此错误AttributeError: 'HTTPServerRequest' object has no attribute 'get'

我的网址是http://127.0.0.1:8000/reset?key=0OeKkQcSRXiy6yAvtgd9GGv4DhO1t0EYuybjHG5Buzo=

url字符串创建为:

keyVal=base64.b64encode(uuid.uuid4().bytes + uuid.uuid4().bytes)
emailLink = 'http://127.0.0.1:8000/reset?key=%s'%keyVal

emailLink用作链接。

我尝试在上面的网址中检索参数key的值为:

class ResetPwdHandler(tornado.web.RequestHandler):       
    def get(self):
        self.render("reset.html")

    def post(self):
        value = self.request.get('key')
        print value

我使用self.get_argument()收到其他表单数据,如果我尝试在此使用它,那么它会说' key'缺少论据。

我看到使用urlparse的示例,但是在提交表单时如何使用它来获取url的参数。

1 个答案:

答案 0 :(得分:2)

我从未使用过Tornado或其Web框架,但documentation很明显,请求类没有定义get方法。您可能会将它与Flask或webapp2混淆。您好像可以self.request.arguments['key']self.get_arguments('key')