良い、
node.jsはまったく初めてです。試してみると、ライアン・ダール(http://www.youtube.com/watch?v=jo_B4LTHi3I)の紹介に従っています。この時点(0:17:00頃)にサーバーの説明があります。応答を処理し、
基本的な例は、Webサーバーから「hello」出力を取得し、2秒後に「world」が表示されるようにすることです。このコードはそれを実行することになっています。
//Require the webserver library
var http = require('http');
var server = http.createServer(function(req, res) {
res.writeHead(200, { 'content-type' : 'text-plain' });
res.write('Hello\n');
//Asynchronous behavior
setTimeout(function() {
res.end('World\n');
}, 2000);
});
server.listen(3000);
それで実行すると、Hello Worldを取得しますが、サーバーからの応答は1つだけで、完全な結果が得られます。つまり、リクエスト>2秒>'HelloWorld'です。リクエストの代わりに>こんにちは>2秒>ワールド。
それはなぜですか?、この動作を変更するにはどうすればよいですか?
私はv0.8.18を使用していますが、curl-ihttp://localhost:3000
は正しいヘッダーを返します...
HTTP/1.1 200 OK
content-type: text-plain
Date: Sat, 26 Jan 2013 18:10:05 GMT
Connection: keep-alive
Transfer-Encoding: chunked