【问题标题】:Google app engine redirect to an absolut uriGoogle 应用引擎重定向到绝对 uri
【发布时间】:2013-03-02 03:06:08
【问题描述】:

我正在使用带有 python 和 webapp2 的谷歌应用引擎,但我找不到使用绝对 uri 重定向到外部网站的方法。

例如:

class Landing(BaseHandler):
    def get(self):     
        self.render("landing.html")

    def post(self):
        name=self.request.get("name")
        if name == "yes"
            self.redirect("/")
        else:
            self.redirect("http://example.com") **This is the problem as I want to redirect to an absolute url.

self.redirect 总是重定向到一个相对的 url。我怎样才能重定向到绝对网址?我认为它必须很容易,但我找不到方法。

【问题讨论】:

    标签: google-app-engine redirect


    【解决方案1】:

    对我来说很好, 重定向到相对网址。请检查您的主机、浏览器和缓存的配置。

    GAE 刚刚在我的开发和生产服务器上使用它将我重定向到 example.com

    请注意 example.com 重定向到 http://www.iana.org/domains/example/

    这可能会让您感到困惑。

    尝试使用例如self.redirect("http://www.facebook.com")。这会将您重定向到 Facebook。很简单。

    【讨论】:

    • 我不明白,它会将我重定向到“mydomain.com/example.com”。我会继续努力的。
    • 是的,我想我找到了问题所在。它实际上是在代码中创建 URL 而不是在重定向本身中。对不起,谢谢。
    • 请查看更新后的答案。可能你的配置有问题。
    【解决方案2】:

    另外.. 我想我可能已经被你的代码中没有返回的事实所困扰 - 所以即使你调用了 self.redirect(...) 位,如果你给 self 写任何其他东西,这可能会扰乱您的重定向。

    【讨论】:

    • 是的,但只有在那之后。虽然不需要返回,但如果你想在那里退出,那么是的,它是需要的。另一种选择是使用 abort=True 作为第二个参数。
    猜你喜欢
    • 2012-11-11
    • 2016-05-19
    • 1970-01-01
    • 1970-01-01
    • 2021-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多