過去ネタ供養 4 : Node.js の標準モジュールだけで HTTP サーバを立てるコード片
過去ネタ供養シリーズ第4弾。Node.js の標準モジュール http
だけを使って、超簡素な HTTP サーバを立てるコード片。
const port = process.env.PORT || 8080;
require('http').createServer((req, res) => {
console.log(new Date(), req.url);
res.writeHead(200, { 'Content-Type': 'text/html' });
res.end('<!DOCTYPE html><html lang="ja"><head><meta charset="UTF-8"><title>Test</title></head><body><h1>Test</h1></body></html>');
}).listen(port);
console.log(`Server Started : Port [${port}]`);
環境変数 PORT
で何も指定しなければ 8080
ポートでサーバが立ち上がり、どんなパスにアクセスしても「Test」と書かれた HTML が返るだけ。ちょっとした動作確認をしたい時によくこんなコードを書くので、スニペットとして残していた。
Deno だと
import { listenAndServe } from 'https://deno.land/std@0.113.0/http/server.ts';
await listenAndServe(':8080', (request: Request): Response => {
return new Response('Hello World', { status: 200 });
});
もっと簡単になっていて、良いよね…。