Javascript 为什么使用app.get()和app.use()两次输出日志?

Javascript 为什么使用app.get()和app.use()两次输出日志?,javascript,express,Javascript,Express,我有一个非常基本的Express web服务器: var app = module.exports = express.createServer(); app.get('/:user', function(req, res) { console.log('GET'); }); app.param('user', function(req, res, next, id) { console.log('PARAM'); next(); }); app.listen(3000

我有一个非常基本的Express web服务器:

var app = module.exports = express.createServer();
app.get('/:user', function(req, res) {
    console.log('GET');
});

app.param('user', function(req, res, next, id) {
    console.log('PARAM');
    next();
});
app.listen(3000);
当我运行
http://localhost:3000/MyName
,我的控制台中有以下输出:

PARAM
GET
PARAM
GET

为什么每个输出都要获取两次?

浏览器很可能自己发送了第二个请求以获取favicon(
http://localhost:3000/favicon.ico
)。

是的,这可能就是原因。我没有想到这一点。谢谢@Amberlamps您可以使用“logger”中间件轻松显示所有请求:
app.use(express.logger())谢谢你的建议!我一定会试试的。