Cornice Tutorial (1)

あらまし

RESTサーバーを実装するための良いフレームワークはないかなと探していたところ、Corniceというpythonで実装されたフレームワークに出会いました。 CorniceはPyramidというWebアプリケーションフレームワークの上にのるものであり、 Pyramidのtemplate EnginがZPT-TAL由来のCameleonであることを知り、これは触ってみなければという気持ちになりました。

公式サイトにはチャットサーバを実装するためのチュートリアルがあるので、 これをネタにPythonの勉強をしつつやって行こうかなと思います。

当方、Pythonに関しては、ドがつくほどの素人なので、あり得ない事し出すかも知れませんが生暖かく見守っていただければかと。

環境構築

公式サイトでは、Python 2.7で進めるようになってます。しかしGithubのソースツリー眺めてたらPython 3.3対応ぽいことがコミットログとしてあがって上がっており、試したところとりあえずScaffoldingがうまくいくことが確認できたので、 あえて地雷覚悟でPython 3.3系で進めてみようかと思います。

インストール

注意

公式サイトのチュートリアルでは、vitualenvで環境を用意してから実行してますが、お好みでどうぞ

私はpythonbrewのvenv上に構築しました。

  • Githubよりレポジトリをclone。

git clone git://github.com/mozilla-services/cornice.git

  • 落としてきたソースツリーに入り、インストール実行。

cd /path/to/cornice python ./setup.py install

  • インストールがうまくいったか確認。pcreate -lを実行し、以下のようにcorniceが表示されればOK。

Available scaffolds:

cornice: A Cornice application

プロジェクト作成

  • 適当なワークフォルダに行き、以下のコマンドを実行。
    • プロジェクト名は cornice_tutorial とします。

pcreate -t cornice cornice_tutorial

ここで、プロジェクト名に、ハイフン(-)は使用しない方がヨサゲ。区切り文字が必要であれば、かわりにアンダースコア(_)を使用する。

  • プロジェクトの中に入り、開発用の実行環境を構成する

cd /path/to/cornice_tutorial

python ./setup.py develop

動作確認

  • 以下のコマンドを実行し、サービスを起動する

pserve cornice_tutorial.ini

  • WEBブラウザで、http://localhost:6543を訪れ、

{'Hello': 'World'}

と出ればOK。

Cornice Tutorial (2)へつづく・・・