ラック
Home > ブログ > 記事 > 2015年2月 > response.writeHeadの遊び方

response.writeHeadの遊び方

カテゴリ: プログラム

node.jsで気付いたこと。response.writeHeadの第二引数がオプションで、HTTPステータスコードの名前も付けられるのか。

response.writeHead(404, {'Content-Type': 'text/plain'});

予め決められているコードの場合(上記で言えば「404」)、第二引数が無くてもそれに対応した文字列もヘッダとして返ってくる(404なら「Not Found」)。

しかし、

response.writeHead(999, {'Content-Type': 'text/plain'});

上記の「999」のようなRFCで規定されていないコードの場合、「Unknown」という文字列がヘッダで返される。

では、

response.writeHead(999, 'Galactic Train', {'Content-Type': 'text/plain'});

こんな風に第二引数で文字列を渡すと…これがちゃんとクライアントに返される。

これを使えば、こんな風に遊べる。

var http = require('http');

http.createServer(function (request, response) {
        response.writeHead(398, 'Sixteenth Moon', {'Content-Type': 'text/plain'});
        response.end('The World.\n');
}).listen(8080);

console.log('Server running at http://127.0.0.1:8080/');

とか、

var http = require('http');

http.createServer(function (request, response) {
        response.writeHead(495, 'Q.E.D.', {'Content-Type': 'text/plain'});
        response.end('Sunlight Yellow Overdrive\n');
}).listen(8080);

console.log('Server running at http://127.0.0.1:8080/');

3ケタの数字を使えば、これだけでもわりと遊べる気がする。というどうでも良いネタでした。

タグ: javascript, ネタ

 



関連する記事一覧