第一次运行Bottle + Python + Google App引擎

时间:2014-12-12 18:59:12

标签: android python google-app-engine bottle google-cloud-platform

作为创建基于云的移动应用的第一步,我选择尝试Google Cloud试用期。因此,根据https://console.developers.google.com/start/appengine?_ga=1.92011098.1535487967.1418404546中的说明,我安装了Google云端SDK和Google App引擎,并按照说明中的说明尝试了以下代码段。

from bottle import Bottle

bottle = Bottle()

# Note: We don't need to call run() since our application is embedded within
# the App Engine WSGI application server.


@bottle.route('/')
def hello():
    """Return a friendly HTTP greeting."""
    return 'Hello World!'


# Define an handler for 404 errors.
@bottle.error(404)
def error_404(error):
    """Return a custom 404 error."""
    return 'Sorry, nothing at this URL.'

根据说明,我

  1. 使用以下命令登录Google Cloud Platform:gcloud auth login
  2. 使用以下命令安装Python的App Engine包:gcloud components update gae-python
  3. 使用以下命令启动本地服务器:dev_appserver.py appengine-try-python-bottle
  4. 然而,它生成了以下日志(我不允许在这里分享,因为我没有在这里获得一些积分)和localhost:8080是空白的。你能帮我理解我在这里缺少什么吗?

3 个答案:

答案 0 :(得分:0)

将bottle.py放入根目录并将其部署到GAE之后,以下代码应该可用(模板,static_file等可能对应用程序的进一步开发很有用,所以我要离开它们):

from bottle import route,run,template, view, request,response
from bottle import static_file
from bottle import Bottle
from bottle import default_app
from bottle import url

@route('/login')
def getHandlerLogin():
    return "<h1>Hello world</h1>"    

app=default_app()

使用带有GAE的瓶子并不困难,但从长远来看,使用webapp2可能更容易。

答案 1 :(得分:0)

在这里寻找答案:https://github.com/GoogleCloudPlatform/appengine-bottle-skeleton

这些说明对我来说非常合适。

答案 2 :(得分:-1)

好的,对于初学者,我认为你不应该在GAE上使用Bottle(或任何其他不受支持的框架)。可以使用它们,但它不是简单。这可能会阻止您的GAE应用启动。在所有情况下,我们都需要更多的调试数据!

尝试使用Webapp2。这是我用过的第一个python框架,但它的使用非常简单(真的,不超过Flask或Bottle)。这是'doc:https://cloud.google.com/appengine/docs/python/gettingstartedpython27/usingwebapp

如果您真的想使用Bottle,作为符合WSGI标准的微框架,那么在GAE上设置它显然不是那么难。也许使用this outdated tutorial来尝试使它工作。 this github可能也可以帮助您启动项目。