GAE Hello World
让我们实现一个简单的应用作为开场白吧,这个应用会显示简短欢迎词“Hello World!”
创建一个简单的请求处理程序
新建一个文件夹,名为helloworld,将存放我们这个应用的全部文件。在helloworld文件夹内新建一个文件,名为helloworld.py,并用文本编辑器打开,写入以下内容:
1 import webapp2 2 3 class MainPage(webapp2.RequestHandler): 4 5 def get(self): 6 self.response.headers['Content-Type'] = 'text/plain' 7 self.response.write('Hello, World!') 8 9 application = webapp2.WSGIApplication([10 ('/', MainPage),11 ], debug=True)
这个Python脚本会响应一个HTTP header请求,给予返回内容和信息“Hello World!”
创建一个配置文件
每个GAE的应用都有一个配置文件,名为app.yaml,在其他方面,这个文件描述的是哪些URL应该用哪个处理程序脚本来处理。
在文件夹helloworld目录内,新建文件,名为:app.yaml,用文本编辑器打开,写入一下内容:
1 application: your-app-id2 version: 13 runtime: python274 api_version: 15 threadsafe: true6 handlers:7 - url: /.*8 script: helloworld.application
以上配置语句定义了应用的以下几个方面:
○这里的application identifier 就是我们的app ID。GAE上的每个应用都有一个独一无二的标识。当我们注册GAE的时候,我们可以为应用选择不同的名字。当然如果你只是在本地开发应用,你就随便取个app ID吧。
○以上是version 1 的代码。如果你改变版本号为2或者3,App Engine将会为你保留之前版本的代码,通过管理员控制台你可以回复之前版本的代码。
○代码运行于Python2.7、API 版本1环境中,其他的运行环境和编程语言将会越来越完善的。
○应用是线程保护的,所以能处理多个同时的请求。线程安全是一种先进的特性,如果您的应用程序不是专门设计来是线程安全的,可能会导致不稳定的行为。
○每个匹配正则表达式/.*的URL请求(这里指的是全部URL)都会由helloworld模块内的application类来处理。
这种配置文件的语法是,关于配置选项的完整清单说明,可以查阅。
测试程序
通过一个脚本处理程序和配置文件,把所有URL都映射到了这个处理程序,程序大功告成!现在你可以用App Engine SDK中的本地服务器来测试这个程序。
如果你正在使用GAE launcher,你可以通过【File】菜单中的【Add Existing Application…】来建立应用,然后选择helloworld文件夹目录,选择app列表中你的应用,点击【Run】按钮来启动应用,然后点击【Browse】去查看,或者在浏览器中进入。
如果你没有使用GAE Launcher,你可以通过以下命令来启动本地网络服务器,修改以下路径为你的helloworld文件夹路径:
1 google_appengine/dev_appserver.py helloworld/
网络服务器已经运行了,实时监听来自端口8080的url请求,你可以通过在浏览器输入以下地址来测试你的程序:
若要了解更多关于运行网络开发服务器的信息,包括如何改变使用的端口,可以查看 ,或者查看命令行help菜单。
重复开发
你可以一边让服务器运行,一边开发你的应用。网络服务器会实时查看你应用中源代码的改变,并且必要时重新加载。
你可以试试,让网络服务器运行,并且更改helloworld.py中的“Hello World!”信息,重载 或者点击GAE launcher中的【Browse】按钮来查看变化。
要关掉网络服务器,可以在终端窗口运行的时候,按下【control+C】或者点击GAE launcher中的【stop】。
本教程中,你可以一直让web sever运行。如果你需要关掉它,你可以通过命令窗口重新启动它。
下一节…
现在我们已经部署了一个完整的应用了!你可以马上上传这个简单的问候到GAE,并且分享你的应用。在上传这个应用之前,让我了解更多关于WebApp2 framwork,添加更多有趣的功能~
接下来
本文为翻译以下网址内容,仅作个人兴趣使用。如有任何侵权行为,请告知本人,立刻删除。