とあるWeb屋の備忘録

とあるWeb屋の備忘録。たまに雑記。

Node.jsの基本構文1

Node.jsの基本構文1

前回に引き続き、こちらの記事で書いた「Expressでごにょごにょしてブラウザに表示させる処理」の詳しい解説を書こうと思ったんだけど、いったんNode.jsの基本構文についても触れたほう良いと思ったので少し脱線しますが書いておこうと思う。

Web制作会社でフロントエンドとして仕事していると開発や本番化するときにファイルをWebサーバにあげることが一般的だけどNode.jsだとサーバの考え方が少し違う。
要はWebサーバをNode.jsを使って一から作っていくということになる。実際そんなに難しくないので以下にコード載せときます。

var http = require('http');
var server = http.createServer();

server.on('request',function(req,res){
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.write('Hello world');
    res.end();
});

server.listen(3000, '127.0.0.1');
console.log("server listening...");

まずhttpオブジェクトをロードする。このオブジェクトはhttpの機能を提供してくれる。
httpの機能とは簡単にいうとWebサーバの機能である。(httpリクエストに応じてhtmlなどの情報を提供するシステムのこと)
だからすごく重要!

その次にcreateServerメソッドでサーバオブジェクトを作る。
それからonメソッドでrequestに対してコールバック関数で振る舞いを定義する。このrequestメソッドは誰かがサーバにアクセスしたときに発生するもので、コールバックを設定することでアクセスしたときの処理を設定できる。このときコールバック関数の引数にはreqオブジェクトとresオブジェクトをとる。
※処理の終了を意味するend()メソッドを最後に忘れずに定義する。

ここまで終わったらlisten()メソッドで、クライアントからのアクセスを待つ待機モードにする。
このコードの場合はクライアントがlocalhost:3000でブラウザにアクセスするとHello worldを返す。