我在運行npm install
後遇到了一個奇怪的問題。req.user被更改爲Array對象
當在requireManager()(或任何控制器)中訪問時,req.user
的實例是Array類型,而不是從passport.deserializeUser返回的對象。
passport.deserializeUser(function(id, done) {
compound.models.User.findById(id, function(err, user) {
done(err, user);
});
});
的console.log(req.user.constructor)在控制打印
function Array() { [native code] }
和
console.log(user.constructor) in `passport.deserializeUser` prints:
function model(doc, fields, skipId) {
if (!(this instanceof model))
return new model(doc, fields, skipId);
Model.call(this, doc, fields, skipId);
}
請幫我解決這個問題。
問候, 薩欽
你可以發佈你的(de)serializeUser實現嗎? – robertklep
編輯帖子,包括反序列化用戶 – Sachin
我不太熟悉CompoundJS,但它可以覆蓋'req.user'本身嗎?你的'deserializeUser'看起來沒問題。 – robertklep