社員ブログ
HOME  社員ブログ

アーカイブ

‘node.js’ カテゴリ

node.jsを触っています

2012年12月23日 18時12分18秒

こんにちは、ピーターです。

中島聡さんのメルマガ「週刊 Life is Beautiful」の2012年11月27日号の中の「node.js 入門(5): ネットワーク・プログラミングの勉強環境としての Node.js」の中で

実際の授業では、「net.Server を使って http.Server を実装する」という演習課題を与えるのが良いと思います。それを通して、「ネットワークプロトコルとは何か」を理解してもらうことが狙いです。

とあったのでやってみました。
ポート8000にhttpプロトコルでアクセスされた時に「Hello World」と返すことしかできていませんが、一応できました。

var net = require('net');
var server = net.createServer(function(socket) {
    socket.on('data', function(data) {
        // GET / HTTP/1.1
        var pattern = /^GET \/ HTTP\/1\.[01]\r\n/;
        if ( pattern.test(data) ) {
            var res = [];
            res.push('HTTP/1.1 200 OK');
            res.push('Content-Type: text/plain');
            res.push('');
            res.push('Hello World\n');
            socket.write(res.join('\n'));
            socket.end();
        } else {
            console.log(data);
            socket.write(data);
        }
  });
}).listen(8000);

JavaScript, node.js, 社員:ピーター