webアプリケーションではhttpリクエストの呼び出しにより処理を振り分けます。
Laravelでいうrouteですね。
今回はURLの文字列により処理の振り分けをします。
プログラム作成
以下のプログラムを作成し、Route.jsとして任意のディレクトリに保存して下さい。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
const http = require('http'); const hostname = '127.0.0.1'; const port = 3000; var server = http.createServer(); server.on('request', doRequest); // リクエストの処理 function doRequest(req, res) { // ルーティング処理 var rute = req.url; var msg = ""; switch(rute){ case '/': msg = 'top'; break; case '/about': msg = 'about'; break; default: msg = 'other'; break; } res.writeHead(200, {'Content-Type': 'text/html'}); res.write(msg); res.end(); } server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); }); |
以降、説明します。
URLの取得
リクエストのurlメソッドでURLを取得出来ます。
1 |
var rute = req.url; |
処理の振り分け
urlを判別してswitch文により処理を振り分けます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
switch(rute){ case '/': msg = 'top'; break; case '/about': msg = 'about'; break; default: msg = 'other'; break; } |
最後に
特段難しいことはありませんでした。