node.js の express を使ってみる

node.js には express という Web フレームワークがあり これを使うと簡単に Web システムの雛形が作れるそうなので 試してみます。

次のサイトを参考に進めました。

[参考]
Node.js(Express)アプリの雛形を自動生成する - アインシュタインの電話番号

express をグローバルインストール。
これで express コマンドが使えるようになります。

$ sudo npm install -g express
$ express -v
2.5.8

"-g" オプションでグローバルインストールです。

上記のサイトでやってるように hoge というアプリを作成します。

$ express hoge
$ cd hoge
$ sudo npm link express
$ npm install jade

express と jade も入れています。
express は、グローバルインストールしてあるのでリンクで入れます。 こうするとシンボリックリンクが作成されます。

これでもう雛形ができました。
さっそく動かしてみます。

$ node app.js
Express server listening on port 3000 in development mode

ポート 3000 で Web サービスが起動します。

http://127.0.0.1:3000/

次のような画面が表示されます。

WRITE_0556_01

ソースを修正して表示を "Welcome to Hoge" にします。

ソースを修正するたびに 毎回 Web サービスを起動するのは面倒なので 自動的にリロードしてくれるコマンドを入れます。 これも上記の参考サイトの通りです。

node-dev をグローバルインストールします。

$ sudo npm install -g node-dev

node コマンドの代わりに node-dev コマンドで起動します。

$ node-dev app.js
Express server listening on port 3000 in development mode

Web サービスが起動した状態で ソースを修正します。

バージョンが代わっているせいか 上記の参考サイトとは違うファイルでした。

$ vi routes/index.js
/*
 * GET home page.
 */

exports.index = function(req, res){
  res.render('index', { title: 'Express' }) // "Hoge" に変更
};

Web サービスを起動したコマンドの方を見ると ソースを変更したことによって リスタートしているようでした。

$ node-dev app.js
Express server listening on port 3000 in development mode
[INFO] Restarting
Express server listening on port 3000 in development mode

アクセスしてみます。

http://127.0.0.1:3000/

WRITE_0556_02

表示内容が変わりました。

とりあえずここまで。確かに簡単ですね。

Google サイト内検索

Amazonアソシエイト