node.jsによるHTTPサーバの作り方
提供: Node.js/JavaScript入門
スポンサーリンク
node.jsによるHTTPサーバ(Webサーバ)のHello Worldプログラムの作成方法を説明します。httpモジュールを使用することで、簡単に作成できます。
読み方
- Hello World
- はろー わーるど
概要
node.jsによる簡単なプログラムを紹介します。JavaScriptでHTTPサーバを起動します。なお、HTTPS(SSLによる暗号化)のサーバを作成する場合には、httpsモジュールを使用します。詳細については、node.jsによるHTTPSサーバの作り方をご参照ください。
ソースコード
このプログラムは、8080でlistenします。
http.js
/* * http.js * Copyright (C) 2014 kaoru <kaoru@bsd> */ var http = require('http'); var server = http.createServer(); server.on('request', doRequest); server.listen(8080); function doRequest(req, res) { res.writeHead(200, {'Content-Type': 'text/plain'}); res.write('Hello World\n'); res.end(); }
実行例
まず、サーバを起動します。
$ node http.js
http://localhost:8080/ にアクセスします。
curlコマンドでのアクセスの例です。
$ curl http://localhost:8080/ Hello World
レスポンスヘッダ込みの実行例は以下の通りです。
$ curl -i http://localhost:8080/ HTTP/1.1 200 OK Content-Type: text/plain Date: Sat, 05 Apr 2014 09:55:08 GMT Connection: keep-alive Transfer-Encoding: chunked Hello World
http.jsは、自動的に終了しないため、nodeコマンドの終了は、C-c です。
http.createServerの他の使い方
http.createServerに処理をそのまま渡すこともできます。
var http = require ('http'); http.createServer ( function (req, res) { res.writeHead (200, {'Content-Type': 'text/plain'} ); res.end ('Hello World\n'); } ).listen (8080);
関連項目
- node.jsによるHTTPサーバの作り方
- node.jsによるHTTPSサーバの作り方
- node.jsでSPDY対応ウェブサーバ
- node.js foreverでHTTPサーバをデーモン化する
- node.js HTTPサーバでApacheライクなログを記録する
- node.js HTTPサーバでレスポンスをgzipやdeflateで圧縮する
- node.js clusterでHTTPサーバをマルチプロセス化する
ツイート
スポンサーリンク