node.jsのルータを作成する
ルーターを作成するにはexportsを使用します。ルーターは別モジュールで作成します。ここではrouter.jsとします。
以下、ルータ作成例です。

function route(pathname) {
  console.log('About to route a request for ' + pathname);
}

exports.route = route;
ルーターにはルートするメソッドを宣言しています。exports.xxxと宣言したとすると、ファイル名.xxxで実行します。

C:¥>node server.js
server start
call back
call back
ルーターが同じ場所にある場合は、以下のようにrequireします。

var router = require('./router');
先ほどのserver.jsでrouterを使用した例です。

var http = require('http');
var url = require('url');
var router = require('./router');
var server = http.createServer(function(req, res){
    var pathname = url.parse(req.url).pathname;
    var query = url.parse(req.url).query;
    
    router.route(pathname);
    
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.write(pathname + '<br />');
    res.write(query + '<br />');
    res.end();
});
server.listen(8084,'127.0.0.1');

console.log('server start');
標準出力にはリクエストが表示されているのがわかります。faviconもリクエストされています。

C:¥>node server.js
server start
About to route a request for /aiu
About to route a request for /favicon.ico

Back to top

Information