正在加载...

Google App Engine 入门: Hello World

April 30th, 2008

(本文译自:Google App Engine Getting Started)

Google App Engine 应用通过 CGI 标准协议与服务器通讯.这是一个标准的Http处理流程,Web服务接受到客户端发来的Get或Post请求,web服务器把请求转发给你的应用程序,由应用程序来处理要输出的内容。

为了更好的理解这个过程,下面就开始开发我们经典的Hellow World应用程序吧。在这一章,仅仅只是实现显示一些简单的信息的功能。

创建一个简单的 Request Handler

首先创建一个名为 helloworld 的文件夹。 除非特殊说明,以后所有关于这个应用程序的文件都将放在这个文件夹里面。

helloworld 文件夹里, 创建一个新文件 helloworld.py,文件内容如下:

print 'Content-Type: text/plain'
print ''
print 'Hello, world!'

这个Python 脚本处理一个request请求,并且设置一个Http header,输出一个空行和一段信息 Hello, world!.

创建配置文件

每个App Engine application 都包含一个名为 app.yaml的配置文件。 在这个配置文件中,可以设置具体的某个URL需要用哪个Python脚本来处理.

现在,在 helloworld 文件夹中,创建一个新的 app.yaml 文件,输入以下内容:

application: helloworld
version: 1
runtime: python
api_version: 1

handlers:
- url: /.*
script: helloworld.py

这个配置文件描述了以下内容::

  • 这个应用程序的标识是 helloworld. 这个标识需要和你在App Engine网站上创建的应用程序标识保持一致。在开发期间你可以使用任何你喜欢的名字,但是上传的时候,必须要和你在App Engine 注册的标识保持一致。现在,我们把它设置为 helloworld.
  • 你的应用程序的版本号为1 ,如果你在上传应用之前修改了这个编号, App Engine 将会自动保留前一个版本的副本,以方便你可以在管理平台中将当前版本恢复成原来的版本。
  • 该应用运行在 python 环境, 环境版本是 1. 目前只有Python可选,将来会提供更多的运行环境和开发语言.
  • 所有符合正则表达式/.* (所有URL) 的请求,都由 helloworld.py 脚本来处理.

该配置文件使用 YAML语法. 关于该配置文件的更多选项, 请参考 the app.yaml reference.

测试应用程序

现在这个应用程序已经基本上完整了。 你可以在本地App Engine SDK环境中进行模拟运行测试。

首先,指定应用路径为 helloworld 目录,使用下面的命令启动测试环境Web服务程序,:

google_appengine/dev_appserver.py helloworld/

这个Web服务程序将监听8080端口. 你可以在浏览器中输入以下地址进行测试:

关于这个web服务程序的更多选项(如怎样修改默认端口等), 请查看the Dev Web Server reference, 或者使用命令行选项 --help.

无需中断你的开发

在开发过程中,你不需要不停的重启Web服务程序。Web服务程序可以自行判断哪些脚本文件已经被修改过了,并且重新加载这些脚本。

试一试: 不要关闭web服务程序, 编辑 helloworld.pyHello, world! 修改成其他内容. 重新访问http://localhost:8080/ ,看看是不是您的修改已经生效了!

要关闭Web服务程序,您只需在控制台中按下 Control-C (或其他有效的 "break" 功能键).

PS:在以后的入门指导中,你可以让你的Web服务程序一直开着 。

接下来...

我们已经开发了一个完整的web应用程序!你可能迫不及待的就想把这个程序发布出去,并分享给你的朋友了。且慢,还是让我们给它增加一些功能后再这样做吧,毕竟它太简陋了。

下一章: 使用 Webapp Framework.

相关阅读:



google reader 抓虾
bloglines my yahoo
哪吒 鲜果
* 更多订阅本站方式请看 订阅帮助