【问题标题】:Temporary page while redirect on google app engine在谷歌应用引擎上重定向时的临时页面
【发布时间】:2012-11-14 04:35:05
【问题描述】:

我想创建一个临时页面,浏览器会在该页面停留几秒钟,然后重定向到另一个页面。在 Google App Engine 上使用 python。我认为下面应该可以工作(我完全是新手),但显然不行。

class TempPage(PageHandler):
        def get(self):
                self.response.write("You will be redirected to the Front page.")
                time.sleep(3)
                self.redirect('/')

PageHandler 继承自 webapp2.RequestHandler。

谁能告诉我应该怎么做。

谢谢

【问题讨论】:

标签: google-app-engine python-2.7 webapp2


【解决方案1】:

我认为您想使用meta refresh 标签。该页面上有一些示例,但您基本上添加了一个如下所示的标签:

<meta http-equiv="refresh" content="TIME_TO_WAIT;URL='PAGE_TO_REDIRECT_TO'">

并将其放入您的 &lt;head&gt; 标记中。

【讨论】:

  • 啊啊!这比我想象的要简单。我应该用谷歌搜索更多。非常感谢!
【解决方案2】:

浏览器仅在您的所有代码执行完毕后才接收该页面。在您的代码中,self.redirect('/') 被执行,因为这是处理程序中的最后一行代码。你可能连文字"You will be redirected to the Front page."都看不到

所以这里发生的只是您的网页需要 3 秒才能加载,然后立即重定向。

您可能想尝试在您发送给他们的页面中通过 javascript 重定向用户。

在这里提出并回答了类似的问题:time delayed redirect?

【讨论】:

  • 感谢您的建议。另一个答案中提到的元刷新标签正是我想要的。
  • 没问题。真正的要点是,尽管您可以多次写入响应,但一旦您的代码执行,它就会“立即”发送到浏览器,但它绝不是增量的。
  • 是的,当我尝试时它不起作用时,我确实这么认为。谢谢你说清楚。
猜你喜欢
  • 1970-01-01
  • 2013-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-18
  • 1970-01-01
  • 2011-02-08
相关资源
最近更新 更多