expressを試してみる
node.jsからのー!expressを試してみました。
サーバサイドで動作するJavaScriptであるnode.js。
expressとは、そのnode.js上でRESTfulなアプリケーションを作成するためのフレームワークです。
本家:express
RubyのwebアプリケーションフレームワークであるSiratra風のAPIを提供しています。
環境
- Ubuntu 10.04 LTS
- node.js 0.1.96
まずはインストールから。
kiwiのインストール
kiwiとはnode.jsのパッケージマネージャです。
git clone git://github.com/visionmedia/kiwi.git cd kiwi sudo make install kiwi -V => 0.3.0
expressのインストール
kiwi -v install express kiwi list => express : 0.9.0
kiwiでインストールしたパッケージは、$HOME/.kiwi 以下に格納されます。
さっそくHelloWorldを試してみます。
mkdir express_text cd express_text
// app.js requier("kiwi").require("express"); get("/", function() { this.redirect("/home"); }); get("/home", function() { return "<h1>Hello World!</h1>" }); run();
さっそく実行してみます。
node app.js => Express started at http://localhost:3000/ in development mode
さっそくブラウザからアクセスします。
おおっ!でてますね!「Hello World!」
expressではいくつかのテンプレートエンジンも使えるみたいです。
今回はHamlを使ってみます。
kiwi install haml kiwi list => express : 0.9.0 haml : 0.4.1
さきほどのサンプルソースを改造してみます。
// app.js requier("kiwi").require("express"); configure(function() { set("root", __dirname); }); get("/", function() { this.redirect("/home"); }); get("/home", function() { this.render("home.html.haml", { locals: { message: {title: "Hello World!!", body: "I lovs node.js!"} } }); // return "<h1>Hello World!</h1>" }); run();
viewファイルも作っておきましょう。
mkdir views
// views/home.html.haml %html %body %title= message.title %h1= message.title = message.body
アプリケーションを実行します。
node app.js
ブラウザから確認します。
正しく表示されていますね。
ドキュメントやexpressのサンプルを見る限るでは、テンプレートエンジンに、ejs(RubyのerbのJavaScript版)やその他のミドルウェア(RubyのRack風)が使える(ようになる?)みたいです。
まだそこまでの機能はそろってないみたいですが、これから発展が楽しみです。