gpt4 book ai didi

node.js - 添加快速 session 中间件会崩溃并显示 "ReferenceError: setImmediate is not defined"

转载 作者:太空宇宙 更新时间:2023-11-04 03:10:21 25 4
gpt4 key购买 nike

我有一个 Node 应用程序。当我尝试添加 session 中间件时

app.use(session({secret: 'keyboard cat', cookie: { maxAge: 50000000 }}));

如果不进行任何进一步的更改,当任何路由到达 res.send 时,我的应用程序就会崩溃,并出现以下错误:

ReferenceError: setImmediate is not defined
at MemoryStore.set (/node_modules/express-session/session/memory.js:71:3)
at Session.save (/node_modules/express-session/session/session.js:63:25)
at ServerResponse.res.end (/node_modules/express-session/index.js:303:19)
at ServerResponse.res.send (/node_modules/express/lib/response.js:150:8)
at ServerResponse.res.json (/node_modules/express/lib/response.js:191:15)
at ServerResponse.res.send (/node_modules/express/lib/response.js:118:21)

我正在使用 "express": "~4.0.0""express-session": "~1.0.0""cookie-parser": "~1.0.0"

是什么原因导致此错误以及如何修复它?

最佳答案

如果您使用 MemoryStore,则需要使用 Node v0.10+,因为 setImmediate 是在 v0.10 中引入的。

更新:这被认为是 Express 4.x 中的一个错误。快车4.1.1 updates package.json 以反射(reflect)与 Node v.10 或更高版本的兼容性。

关于node.js - 添加快速 session 中间件会崩溃并显示 "ReferenceError: setImmediate is not defined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23329660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com