我在routes
文件夹中有两个文件 - index.js
和api.js
。
index.js
仅发送带有链接样式,图像和脚本的主模板页面。
api.js
管理所有API调用。
我正在使用PassportJS实现身份验证。身份验证本身工作正常问题在于,出于某种原因,我在尝试从undefined
端点访问req.user
时获得了api.js
,但是从index.js
访问时,它很好并且填充了适当的数据。< / p>
例如,我需要在api端点请求时以JSON身份发送所有用户的帖子,所以我想得到req.user.id
或类似的东西,以便向服务器端的数据库发送请求。
配置Passport时我可以错过什么?
答案 0 :(得分:0)
您必须在所有路线之前加入护照的会话中间件,以便设置req.user
。
app.use(express.session({ secret: 'secret' }));
app.use(passport.initialize());
app.use(passport.session());
app.use(app.router);
app.use(myRoutes);
答案 1 :(得分:0)
确保您收到。 _id 而不是 .id ,这是MongoDB中默认的ID创建。