创建并响应发布上的错误
在服务器上,你可以创建这样的发布。this.userId
是当前登录用户的 ID。如果没有用户登录,则可能需要抛出错误并对其进行响应。
import Secrets from '/imports/collections/Secrets';
Meteor.publish('protected_data', function () {
if (!this.userId) {
this.error(new Meteor.Error(403, "Not Logged In."));
this.ready();
} else {
return Secrets.find();
}
});
在客户端上,你可以使用以下内容进行响应。
Meteor.subscribe('protected_data', {
onError(err) {
if (err.error === 403) {
alert("Looks like you're not logged in");
}
},
});
File / imports / collections / Secrets 创建对秘密集合的引用,如下所示:
const Secrets = new Mongo.Collection('secrets');