2

有人可以告诉我发生了什么吗?我有一个应用程序:

var express = require('express')
  , http = require('http')
  , app = express()
  , port = 3000
  , mw = require('./lib/middlewareView')

app.use(mw());

app.get('/', function (req, res, next) {
  res.send("hello");
});

app.listen(port, function() {
    console.log("Listening on " + port);
});

和 /lib/middlewareView.js :

module.exports = function middlewareView(){
  return function middlewareView(req, res, next) {
    console.log("middleware run");

    next();
  };
};

当我使用端口 3000 并打开http://localhost:3000/一切似乎都很好。控制台输出:

Listening on 3000
middleware run
hello

但是如果我切换到端口 5000,控制台会打印:

Listening on 5000
middleware run
hello
middleware run
middleware run

所以中间件在一个请求中运行了 3 次,对吧?正常吗?

4

1 回答 1

0

它可能与 favicon.ico 有关 - 在检索您网站的图标时会发生这种情况,请检查日志以确保...

于 2013-02-08T02:56:08.687 回答