Google App Engine 上的 web.py

Posted

技术标签:

【中文标题】Google App Engine 上的 web.py【英文标题】:web.py on Google App Engine 【发布时间】:2011-04-09 13:56:37 【问题描述】:

我正在尝试在 GAE 上运行 web.py 应用程序。我希望像下面这样的东西可能会起作用

import web
from google.appengine.ext.webapp.util import run_wsgi_app

[...]

def main():
    app = web.application(urls, globals())
    run_wsgi_app(app)

但显然app 对象不符合run_wsgi_app 函数的预期。错误消息说像app has no __call__ function,所以我尝试传递app.run,但这也没有用。

如何拨打run_wsgi_app 工作?

【问题讨论】:

【参考方案1】:

这是StackPrinter 的 sn-p,这是一个运行在 Google App Engine 之上的webpy 应用程序。

from google.appengine.ext.webapp.util import run_wsgi_app
import web
...
app = web.application(urls, globals())

def main():

    application = app.wsgifunc()
    run_wsgi_app(application)

if __name__ == '__main__':
    main()

【讨论】:

【参考方案2】:

你不需要导入或使用run_wsgi_app,web.py有一个runcgi方法可以完美运行!

if __name__  == '__main__':
    app.cgirun()

【讨论】:

为什么不直接使用app.run()? web.py 应该能够确定它需要将应用程序作为 cgi 运行。

以上是关于Google App Engine 上的 web.py的主要内容,如果未能解决你的问题,请参考以下文章

Google-App-Engine 上的 Grails - 它死了吗? [关闭]

Google App Engine 上的静态 mp4 视频

sh 访问Google App Engine上的docker实例

Google App Engine 上的 Production App 突然无法访问 Google Cloud Storage

Google Apps 域上的 Google App Engine

google app engine java - 基于域的重定向