86

ノードで次のプログラムを作成した場合:

  http.createServer(function (req, res) {

    if( req.method == 'GET' ) {
      var body = ''; req.on('data', function(data) { body += data });
      req.on('end',  function() {
        console.log('request ended')
      });
    }

    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('142\n');
  }).listen(3500);

次に、コンソールに2回表示された状態でサーバーにアクセスします。単一のHTTPリクエストが原因でこれが2回実行される理由がhttp://xxx.xx.xxx.xx:35010わかりrequest endedません。

4

3 に答える 3

181

これは正常です。ブラウザは複数の呼び出しを行います。

/favicon.icoほとんどのブラウザは、たとえばグラブを呼び出します。

URL を記録してみてください:

console.log(req.url);

何が呼び出されているかがわかります。

于 2012-08-14T22:48:57.310 に答える