2010/10/11

GAEで、世界よこんにちは #1

Google App Engine で、'Hello, World!' に挑戦してみました。
開発環境は Windows(Vista Home Premium) + Python です。

1. Python をインストールする
ガイドラインに「Python 2.5 をダウンロードしてインストールしてください」とあるので
Python Official Website へのリンクをクリック。普通にリンクを辿るとPython 2.5.5 のダウンロード画面に遷移するが、ソースコードしかダウンロード出来ない模様。

Pythonのバイナリモジュール自体をビルドする環境がない(というか構築が面倒な)ので、URLの「2.5.5」を「2.5.4」に書き換えてトライしてみる。まんまと「msi」のダウンロードリンクを発見できました。


ということで、今回使用するPythonのバージョンは 2.5.4 に決定です。「msi」をダウンロードしてインストール。Twitterを見ている間に終わりました。

2. App Engine SDK for Python をインストールする
特に問題なく、リンク先から「msi」を取得できました。

これもTwitterを見ている間にインストール完了です。

3. ローカルで「こんにちは」する。
「Hello, World!」のチュートリアルに従って、リクエストハンドラ(helloworld.py)と設定ファイル(app.yml)を作成します。今回はCドライブ直下に「helloworld」フォルダを作成してその中に作りました。
次に「Web サーバーを起動します」とあります。SDKには、Webサーバーまで含まれているのですね。コマンドは「google_appengine/dev_appserver.py helloworld/」とありますが、Windowsの場合「google_appengine」までのパスは通っているので「google_appengine」は不要です。むしろ、「helloworld」の前にパスを指定してあげる必要があります。

  • 前:google_appengine/dev_appserver.py helloworld/
  • 後:dev_appserver.py C:\helloworld\

「Allow dev_appserver to check for updates on startup? (Y/n):」と聞かれたので「y」と答えると以下のように表示されました。警告が2件(datastoreからデータが読めない、images APIの初期化失敗)でていますが、とりあえず「http://localhost:8080」 で helloworldアプリが起動しているとのこと。

早速ブラウザでアクセスしてみると、予想通り左上に小さく「Hello, world!」と表示されました。チュートリアルにある通り、Webサーバーを起動中のまま「helloworld.py」での出力を「Hello, world! Hello, everyone!」に書き換えてブラウザをリロードすると、表示も変わりました。なかなか優れものです。

4. Webアプリケーションのフレームワークを導入する(webapp)
Djangoを使ってみたいところですが、最初なので欲張らずにチュートリアル通りにGoogle独自のフレームワーク webapp を使用することにします。インストール自体はSDKに含まれているので、「helloworld.py」をチュートリアルに従って書き換えるだけです。ブラウザをリロードすれば、「Hello, webapp World!」に早変わりです。


5. SDKを通じてGoogleのサービスを利用する(ユーザーサービス)
チュートリアルでは、Googleアカウントでのログイン状態を確認しています。
ログインしていなければ、デフォルトのログインページにリダイレクトさせます。このときログイン後の戻りURLを指定することで、自アプリへ制御を戻せます。

ログイン後は、ユーザーのニックネームを取得して、動的に表示メッセージを切り替えることが可能になります。

そろそろ食事の時間なので、本日はここまでです。See you next Saturday!

0 件のコメント:

コメントを投稿