使用 webapp2 重定向以捕获 URL 参数
Redirect using webapp2 to capture the URL parameters
我为注册页面编写了代码,要求提供用户名、密码和电子邮件等信息。用户输入正确后,页面重定向到
'/welcome?username=name'
我正在使用 self.redirect。通过使用方法重定向,我将新的 URL 作为“/welcome”。我将如何包含查询参数?我还希望 user_name 显示到重定向页面,如:
Welcome name
我该怎么做?
这是我写的 class 来处理 '/welcome'
class welcomeHandler(webapp2.RequestHandler):
def get(self):
self.response.out.write("Welcome")
app = webapp2.WSGIApplication([
('/', MainHandler),('/welcome',welcomeHandler)], debug=True)
为什么要这样处理用户问候语?将其作为模板变量传递或按以下方式进行:
class welcomeHandler(webapp2.RequestHandler):
def get(self):
self.response.out.write("Welcome %s") % username
此外,请确保在用户注册后为他们创建一个会话,否则您只是在创建他们的凭据,而不是让他们实际登录。
您需要使用字符串替换。假设您将用户名存储在名称中。因此你需要写:
self.redirect("/Welcome/username="+name)
如果需要编码,可以用这个:
import urllib
self.redirect('/welcome?' + urllib.urlencode({'username': name})
如果您需要添加更多查询参数,只需将它们添加到字典中,如 How to urlencode a querystring in Python? 所示。
我为注册页面编写了代码,要求提供用户名、密码和电子邮件等信息。用户输入正确后,页面重定向到
'/welcome?username=name'
我正在使用 self.redirect。通过使用方法重定向,我将新的 URL 作为“/welcome”。我将如何包含查询参数?我还希望 user_name 显示到重定向页面,如:
Welcome name
我该怎么做? 这是我写的 class 来处理 '/welcome'
class welcomeHandler(webapp2.RequestHandler):
def get(self):
self.response.out.write("Welcome")
app = webapp2.WSGIApplication([
('/', MainHandler),('/welcome',welcomeHandler)], debug=True)
为什么要这样处理用户问候语?将其作为模板变量传递或按以下方式进行:
class welcomeHandler(webapp2.RequestHandler):
def get(self):
self.response.out.write("Welcome %s") % username
此外,请确保在用户注册后为他们创建一个会话,否则您只是在创建他们的凭据,而不是让他们实际登录。
您需要使用字符串替换。假设您将用户名存储在名称中。因此你需要写:
self.redirect("/Welcome/username="+name)
如果需要编码,可以用这个:
import urllib
self.redirect('/welcome?' + urllib.urlencode({'username': name})
如果您需要添加更多查询参数,只需将它们添加到字典中,如 How to urlencode a querystring in Python? 所示。