【问题标题】:Redirect using webapp2 to capture the URL parameters使用 webapp2 重定向以捕获 URL 参数
【发布时间】:2015-07-01 15:59:36
【问题描述】:

我为注册页面编写了一个代码,要求提供用户名、密码和电子邮件等信息。用户输入正确后,页面被重定向到

'/welcome?username=name'

我正在使用 self.redirect。通过使用方法重定向,我将新 URL 获取为“/欢迎”。我将如何包含查询参数?我还希望将 user_name 显示到重定向页面,例如:

欢迎名字

我将如何做到这一点? 这是我编写的用于处理“/welcome”的类

class welcomeHandler(webapp2.RequestHandler):
    def get(self):
        self.response.out.write("Welcome")

app = webapp2.WSGIApplication([
    ('/', MainHandler),('/welcome',welcomeHandler)], debug=True)

【问题讨论】:

标签: python redirect webapp2


【解决方案1】:

如果需要编码,可以使用这个:

import urllib
self.redirect('/welcome?' + urllib.urlencode({'username': name})

如果您需要添加更多查询参数,只需将它们添加到字典中,如How to urlencode a querystring in Python? 所示。

【讨论】:

    【解决方案2】:

    您需要使用字符串替换。假设您将用户名存储在名称中。因此你需要写:

    self.redirect("/Welcome/username="+name)
    

    【讨论】:

      【解决方案3】:

      您为什么要这样处理用户问候语?要么将其作为模板变量传递,要么按以下方式进行:

      class welcomeHandler(webapp2.RequestHandler):
          def get(self):
              self.response.out.write("Welcome %s") % username
      

      此外,请确保在用户注册后为他们创建会话,否则您只是在创建他们的凭据,而不是实际登录。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-06
        • 1970-01-01
        • 1970-01-01
        • 2015-06-16
        • 2015-04-27
        • 2015-03-22
        相关资源
        最近更新 更多