Meteor.js中的audit-argument-checks和Subscriptions

时间:2014-02-16 05:10:36

标签: javascript meteor audit

使用audit-argument-checks包进行检查时,在检查Meteor.userId()时如何进行匹配?是否需要真正检查userId?

Meteor.publish('scores', function(userId) {
    check(userId, Match.any)
    return Scores.find({userId: userId})
})

2 个答案:

答案 0 :(得分:4)

由于内置用户集合的ID生成始终为'STRING'且无法更改,因此您可以执行以下操作:

check(userId, String);

如果您正在为其他集合使用'MONGO' ID生成,那么您需要执行以下操作:

check(docId, Meteor.Collection.ObjectID);

答案 1 :(得分:3)

如果用户已登录,则发布功能已具有userId。它可以通过this.userId访问,因此用户无需传递或检查它。

像这样:

Meteor.publish('scores', function() {
  return Scores.find({userId: this.userId})
});