我是新手使用nodejs而我只是想尝试一个已经和我的队友一起工作的服务器.我在mac上,已经安装了所有需要的模块"npm install".现在模块"cookie-signature"似乎存在问题,该模块已经包含在"express"模块中.我试图启动该程序,我没有得到任何错误,但当我尝试在localhost:3000上打开页面时,我收到以下错误:
/Users/kevinglaap/Sites/Uni/git/node_server/node_modules/express/node_modules/cookie-signature/index.js:19
if ('string' != typeof secret) throw new TypeError('secret required');
^
TypeError: secret required
at Object.exports.sign (/Users/kevinglaap/Sites/Uni/git/node_server/node_modules/express/node_modules/cookie-signature/index.js:19:40)
at ServerResponse.end (/Users/kevinglaap/Sites/Uni/git/node_server/node_modules/express/node_modules/connect/lib/middleware/session.js:267:34)
at ServerResponse.EventEmitter.emit (events.js:93:17)
at ServerResponse.res.writeHead (/Users/kevinglaap/Sites/Uni/git/node_server/node_modules/express/node_modules/connect/lib/patch.js:73:36)
at ServerResponse._implicitHeader (http.js:932:8)
at ServerResponse.OutgoingMessage.end (http.js:767:10)
at res.end (/Users/kevinglaap/Sites/Uni/git/node_server/node_modules/express/node_modules/connect/lib/middleware/session.js:282:13)
at /Users/kevinglaap/Sites/Uni/git/node_server/node_modules/express/node_modules/connect/lib/middleware/session/memory.js:73:11
at process.startup.processNextTick.process._tickCallback (node.js:244:9)
Run Code Online (Sandbox Code Playgroud)
该模块从不在服务器资源中使用.我已经检查了"sign"函数的用法,因为错误是一个读取错误,它表示资源可能做错了,但它只用于express中的express或其他模块.我已经在网上搜索了几天,还没有找到解决方案.我错过了什么?在此先感谢您的帮助.
Ben*_*ans 12
配置快速实例时,您需要:
app.use(express.cookieParser('your secret here'));
app.use(express.session());
Run Code Online (Sandbox Code Playgroud)
确保你的cookieParser(带有你的秘密字符串)在.之前 express.session()