素人Web屋の備忘録

素人Web屋の備忘録。たまに雑記。

Node.jsの基本構文2

Node.jsの基本構文2

前回の基本構文続き。

この部分のコードを解説していく。

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

手っ取り早くコードを書くならチェーンメソッドでつなげて書けるけどひとつひとつ処理を分けて書きたいのでサーバオブジェクトがもっているonメソッドを使う。
onメソッドは第一引数にイベント名、第二引数に処理を書いてイベント名と処理を関連付けるメソッド。

処理の流れとしてはまずhttp.createServerがrequestされたらHttpレスポンスヘッダを出力する。
writeHeadメソッドの第一引数にはステータスコード、第二引数にはヘッダーのキーと値を渡す。
つぎにWriteメソッドでHttpレスポンスボディを出力する。レスポンスボディにはファイルの中身が入っている。

補足情報としてHttpレスポンスは3つの部品から成り立っていて、
一番上がステータスライン
二番目がHttpレスポンスヘッダ 最後がHttpレスポンスボディ
となっている。

処理が終了するときはendメソッドで閉じる。

ちなみに上に書いてあるコードをonメソッドを使わずにチェーンで書くとこうなる。
あとはここではやってないけどポート番号とIPアドレスは別ファイルに変数で持たせたほうが良いです。

var http = require('http');
http.createServer(function(req,res){
    res.writeHead(200,{'Content-Type': 'text/plain'});
    res.write("Hello world!!!");
    res.end();
}).listen(3000,'127.0.0.1');

console.log("server listening...");

次回はExpressの説明に戻りたいと思います!