Node.js 无法读取属性'_标题';finalHandler节点模块中未定义的

Node.js 无法读取属性'_标题';finalHandler节点模块中未定义的,node.js,node-modules,Node.js,Node Modules,我似乎找不到解决我问题的办法。我试图启动我的nodeJS/expressJS应用程序,但在“npm启动”时收到一个错误 错误和堆栈跟踪: /Users/jmccreary/Documents/NewHireSite/node_modules/finalhandler/index.js:94 if (!err && res._header) { ^ TypeError: Cannot read property '_heade

我似乎找不到解决我问题的办法。我试图启动我的nodeJS/expressJS应用程序,但在“npm启动”时收到一个错误

错误和堆栈跟踪:

    /Users/jmccreary/Documents/NewHireSite/node_modules/finalhandler/index.js:94
    if (!err && res._header) {
                   ^

TypeError: Cannot read property '_header' of undefined
    at /Users/jmccreary/Documents/NewHireSite/node_modules/finalhandler/index.js:94:20
    at /Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/router/index.js:635:15
    at next (/Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/router/index.js:210:14)
    at Function.handle (/Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/router/index.js:174:3)
    at Function.handle (/Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/application.js:174:10)
    at app (/Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/express.js:38:9)
    at Object.<anonymous> (/Users/jmccreary/Documents/NewHireSite/app.js:101:25)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/jmccreary/Documents/NewHireSite/bin/www:7:11)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.runMain (module.js:605:10)
    at run (bootstrap_node.js:427:7)
 The req is:  Authenticator {
  _key: 'passport',
  _strategies: { session: SessionStrategy { name: 'session' } },
  _serializers: [],
  _deserializers: [],
  _infoTransformers: [],
  _framework: 
   { initialize: [Function: initialize],
     authenticate: [Function: authenticate] },
  _userProperty: 'user',
  Authenticator: [Function: Authenticator],
  Passport: [Function: Authenticator],
  Strategy: { [Function: Strategy] Strategy: [Circular] },
  strategies: { SessionStrategy: { [Function: SessionStrategy] super_: [Object] } } }
 The res is:  undefined
从my console.log()中,如图所示,输出如下:

    /Users/jmccreary/Documents/NewHireSite/node_modules/finalhandler/index.js:94
    if (!err && res._header) {
                   ^

TypeError: Cannot read property '_header' of undefined
    at /Users/jmccreary/Documents/NewHireSite/node_modules/finalhandler/index.js:94:20
    at /Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/router/index.js:635:15
    at next (/Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/router/index.js:210:14)
    at Function.handle (/Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/router/index.js:174:3)
    at Function.handle (/Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/application.js:174:10)
    at app (/Users/jmccreary/Documents/NewHireSite/node_modules/express/lib/express.js:38:9)
    at Object.<anonymous> (/Users/jmccreary/Documents/NewHireSite/app.js:101:25)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/Users/jmccreary/Documents/NewHireSite/bin/www:7:11)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.runMain (module.js:605:10)
    at run (bootstrap_node.js:427:7)
 The req is:  Authenticator {
  _key: 'passport',
  _strategies: { session: SessionStrategy { name: 'session' } },
  _serializers: [],
  _deserializers: [],
  _infoTransformers: [],
  _framework: 
   { initialize: [Function: initialize],
     authenticate: [Function: authenticate] },
  _userProperty: 'user',
  Authenticator: [Function: Authenticator],
  Passport: [Function: Authenticator],
  Strategy: { [Function: Strategy] Strategy: [Circular] },
  strategies: { SessionStrategy: { [Function: SessionStrategy] super_: [Object] } } }
 The res is:  undefined
编辑:我相信这就是调用错误的代码(来自node_modules/express/lib/application.js):

我的package.json文件(使用Express 4)如下所示:

{
  "name": "newhiresite",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
"dependencies": {
    "body-parser": "~1.17.1",
    "connect-flash": "^0.1.1",
    "cookie-parser": "~1.4.3",
    "debug": "~2.6.3",
    "express": "~4.15.2",
    "express-session": "^1.15.3",
    "express-validator": "^3.2.0",
    "fs": "0.0.1-security",
    "mongodb": "^2.2.25",
    "mongoose": "^4.10.1",
    "morgan": "~1.8.1",
    "node-sass-middleware": "0.9.8",
    "passport": "~0.3.2",
    "passport-local": "~1.0.0",
    "pug": "~2.0.0-rc.1",
    "serve-favicon": "~2.4.2"
  }
}
我能够很好地运行教程的源代码,它的模块与我的应用程序相同,几乎相同(除了npm start命令中的www/bin文件)。我尝试过删除其他模块,并在app.js文件中四处移动,但都没有效果


任何指点或帮助都将不胜感激。谢谢大家!

我也犯了同样的错误。下面的内容为我解决了问题,也许对你有帮助?我有这个密码:

var express = require('express')();
var app = express();

app.listen(3000, function () {
  console.log('Example app listening at http://%s:%s');
});
它有一个()太多了。移除它解决了问题:

var express = require('express');

我刚才有这个问题。这一切都是在我开始清理代码时发生的,比如删除行尾的“;”。我把其中一个“;”带回来,问题就消失了。

最重要的部分丢失了:您在其中使用的代码
finalhandler
。我相信我添加了正确的代码。这是我的第一个nodeJS应用程序,如果这不正确,请告诉我您认为可能在调用它。您在代码的某个地方调用的是
finalhandler(…)
。您应该发布该代码。显然,它是从express节点模块调用的。我添加了来自该模块的调用以及package.json文件。我的express版本是4.15.2。最新的版本是4.15.3,但即使在指定了4.15.3并运行了npm install然后又运行了npm start之后,错误仍然存在。很抱歉,我以为您自己在使用它。无论如何,堆栈跟踪指向
app.js
第101行作为原因的潜在位置。另外,我不确定是否理解您显示的
console.log
输出(从
开始,请求为:Authenticator
)。您似乎是从Passport处理程序内部或其他什么地方登录的?
()
您认为这与这个问题的答案有什么关系?我从你的回答中得不到任何帮助。这可能对原来的问题没有帮助,但在我的情况下,我还有额外的()项,这就是导致我的问题的原因。完全错过了那个。谢谢