1

这与我提出的关于自动登录的另一个问题有关。我认为它正在工作,因为 cookie 已设置,但是,现在当我检查查询时,它总是返回相同的用户“admin”。如果我在 mongo 中运行此查询:

db.getCollection('aposUsersSafe').find({username: 'lance'})

我得到用户“lance”,但使用此处答案中发布的代码:

自动登录用户到撇号

对于我提供的任何有效用户名,我总是返回相同的用户“admin”。

 self.apos.users.find({username: 'lance'}).permission(false).toObject(function (err, user) {
                if (err) {
                    return callback(err);
                }
                if (!user) {
                    return callback(null);
                }

                console.log(user);
  });

这看起来很基本,但我无法弄清楚为什么查询它不会返回任何记录但同样的“管理员”记录?

4

1 回答 1

2

我检查了基类中 users.find 的使用,发现它将请求对象作为参数传递给 find()。添加此参数会返回预期结果。看起来这只是在原始答案的片段中被遗漏了,但它现在正在工作。

self.apos.users.find(req, {username: 'lance'})

于 2016-10-05T19:47:32.667 回答