[Node.js]簡単にHTTPサーバを実装[Tips]
nodeでhtml表示
node.js標準のhttpモジュールでhtmlを使いたい場合、パスを解釈してhtmlを表示する機能は自分で実装する必要があります。 expressとかのフレームワークを使えば必要なhttpサーバの機能を十分満たしていますが、 そこまで大げさにする必要がなく、とにかく指定したurlでhtml(静的ファイル)を使えればいいという時の簡単な実装方法を紹介します。
環境構築方法
今回使用した動作環境は以下のとおりです。
- OS : MacOS X 10.7.4
- Node.js : v0.8.15
- npm : 1.1.66
connectで簡単httpサーバ実装
connectとはミドルウェアフレームワークで、静的ファイル処理やルーティング処理のための機能をもっています。 expressもこのモジュールをベースに実装されています。 ではインストールからhtmlファイル表示まで一気にやってみましょう。
% mkdir connect % cd connect % npm install connect % touch app.js
サーバ用モジュールを作成します。 静的ファイルのベースディレクトリをapp.jsと同じディレクトリに指定しています。
//app.js var connect = require('connect'); connect.createServer( connect.static(__dirname) ).listen(3000);
app.jsと同じディレクトリに適当なhtmlファイルを用意しましょう。 とりあえず次のようなhtmlファイル。
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>hello connect</title> </head> <body> hello connect </body> </html>
app.jsを起動してブラウザでアクセスしてみましょう。htmlファイルが表示されます。
% node app.js % open http://localhost:3000