繁体   English   中英

在Tornado上将变量从一个网站传递到另一个网站

[英]Passing a variable from one website to another on Tornado

我想使用Tornado将对象从一个网页(“ localhost / form”)传递到另一个重定向网页(“ localhost / redirect”)。 我的代码段看起来像这样。

class FormHandler (BaseHandler):
def get(self):
        redirect_page='localhost/redirect'
        some_variable='a variable that can only be generated in FormHandler'
        self.write('<button id="Redirect" type="button">Redirect</button><br><script> document.getElementById("Redirect").onclick = function () {location.href ="'redirect_page'";};</script>')


class RedirectHander (BaseHandler):
        self.write('The variable passed was'+some_variable)

def make_app():
return Application(
    [
        url('/', BaseHandler, { "var":"nothing" }, name="root"), # this is for the root! :)
        url('/form', FormHandler, { "var":"initialize this!" }, name = "forlorn"),
        url('/redirect', RedirectHandler, { "var":"initialize this!" }, name = "forlorn"),
    ],
    # settings:
    debug = True,
)

由于重定向是由客户端处理的,因此在重定向期间传递的浏览器数据必须在url或cookie中完成。

在网址中使用正则表达式以在网址中传递选项: http : //www.tornadoweb.org/en/stable/web.html#tornado.web.URLSpec

使用RequestHandler.get_argument获取查询字符串选项

如果您要在两者之间传递大量数据,首先要做的是正确的事情。 如果是第二个,则可以将数据放在服务器端的安全位置(例如数据库),然后在重定向中传递ID以再次找到记录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM