My Favorite Things - Coding or die.

とある技術者の経験記録、的な。

Node.jsメモ

ドットインストールで勉強してみたので簡単にメモっておく。 dotinstall.com

基本的なこと

  • シングルスレッドモデル(イベントループ)
  • JavaScriptで動く
  • コールバックを用いた非同期処理

モジュール?の読み込み

var http = require('http'),
    settings = require('./setting.js'); // 自分で作ったものはパスを指定

モジュールのインストール

npm(node package manager)を使う

$ sudo npm install xxx

JS(サーバ)の実行

$ node server.js

Hello, world

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

// start listen
server.listen(1337, 'localhost');

テンプレートエンジン

ejs(Embedded JavaScript templates)とかが使える。

<html>
<h1><%= title %></h1> <!-- escape -->
<p><%- content %></p> <!-- non-escape -->
<p><%= n %> views</p>
</html>

クエリ処理

querystringというパッケージが便利。

    if (req.method === 'POST') {
        req.data = ""; // init
        req.on('readable', function() { // while-reading
            req.data += req.read();
        });
        req.on('end', function() { // read-finish.
            console.log(req.data);
            var query = qs.parse(req.data); // parse
        });
    }