Google App Engine ことはじめ 野望(1)
EclipseにPythonプラグインをこの間導入し、書き方もちょっとづつ勉強しながら、本題の Google App Engine を触りたいと思う。
まずは、SDKのダウンロードから、フレームワークを使った簡単なアプリケーション作成までのメモ。Eclipseを使うこと以外は、基本的にこの手順にしたがう。
SDKのダウンロード
http://code.google.com/intl/ja/appengine/downloads.html
から、SDKをダウンロードして、インストーラの指示通りインストールを行う。
Hello world!のコーディング
hello.py
print 'Content-Type: text/plain' print '' print 'Hello Google App Engine!'
app.yaml
application: hellogoogleapp version: 1 runtime: python api_version: 1 handlers: - url: /.* script: hello.py
コマンドラインからだと、
>%sdk_install_dir%\google_appengine\dev_appserver.py hellogoogleapp/
のように起動するみたいだけど、Eclipseを使いたいので、 以下のbuild.xmlのようにAntのタスクを定義して起動させてみることにした・・・で、起動したはいいけど、どうやって停止させよう?。コマンドラインから起動の場合、Ctrl+Breakで停止するのだが、EclipseのコンソールからCtrl+Breakでも停止しないし。。。当面タスクマネジャーからプロセスを殺そう(弊害あるかな?)
build.xml
<project basedir="../">
<property value="C:\Program Files\Google\google_appengine"name="websvrdir"></property>
<target name="run_webserver">
<exec dir="${websvrdir}" executable="python">
<arg line="dev_appserver.py '${basedir}/hellogoogleapp/' />
</exec>
</target> </project>
で、Antタスクを実行し、SDK組み込みWebサーバを起動、そして、http://localhost:8080 にアクセス。めでたく起動!
Webアプリケーション用フレームワークの利用
とりあえず、Python用のWebアプリケーションフレームワークも数々あり、Django、CherryPy、Pylons、web.pyをサポートしているそうだ・・・Google App Engine 以外での利用も考えたら、メジャーどころを押さえときたいところだけど、なにぶん知識がとぼしいので、ここは入門ページの教えに従って、「App Engine には、シンプルな独自の Web アプリケーション フレームワークが用意されています。これが webapp
です。」を利用してみる。
コード補完させる
IDEなしではコーディングできない軟弱な体になっているので、Eclipseにコード補完させる。
Menu - Project - Properties - External Source Folders
に、SDKのインストールパス(例 C:\Program Files\Google\google_appengine)を指定
ゆおし!補完できるようになった。
サンプルコードの実装
実装して、実行するのはいいが何度やってもエラーになる。。。
よく見てみたら、インデントのレベルがずれてた。
なれるとインデントで構造が決まる文法ってよくなるのかな~
中括弧のほうがいいな~
と思いつつ、コードを修正して実行。
ちゃんと動きました。