Google App Engine:POST请求后的空白页面

时间:2013-09-07 10:34:36

标签: python google-app-engine webapp2

当我点击我的网络应用程序中的“添加”按钮时,该地址会显示:

本地主机:8080 /添加

但是有一个空白页面。

main.py:

class Add(webapp2.RequestHandler):
    def post(self):
        print("Test")
        ...
        return self.redirect("/admin_page")

app = webapp2.WSGIApplication([...
                                ('/add', Add),
                                ('/', MainPage)], debug=True)

在日志控制台中,它未到达print("Test")行。日志显示:

INFO     2013-09-07 13:14:42,423 server.py:528] "POST /add HTTP/1.1" 200 - 

并且卡在那里,它不会继续运行。

可能是什么问题以及如何解决?


修改

变量result收到正确的值,但该函数不执行重定向:

class Add(webapp2.RequestHandler):
    def post(self):
        ...
        logging.debug("result in main.py = %s", result)
        if result is 0:
            return self.redirect("/admin_page")


app = webapp2.WSGIApplication([...
                               ('/add', Add),
                               ('/', MainPage)], debug=True)

日志控制台输出:

DEBUG    2013-09-07 12:36:07,167 main.py:362] result in main.py = 0

它显示空白页面:

本地主机:8080 /添加

2 个答案:

答案 0 :(得分:1)

不应使用post,而应写入回复:

self.response.write("Test")

另外;你不应该使用print,因为appengine使用它进行内部沟通。

答案 1 :(得分:0)

您需要从App.post()方法返回html:

self.response.write("<html><body>Test</body></html>")

redirect到另一页。