Meteor - 下载pdf / restrict访问文件

时间:2016-08-06 10:00:14

标签: meteor

我正在尝试设置下载PDF文件的机制,该机制仅在会员登录时受限(限制访问)

所以我正在寻找两个选择:

1)我已经有了一个PDF,并希望将其添加到公共文件夹中,但不知道如何限制对相同的访问(如果用户登录然后访问)

2)将文件放在服务器上并实际从客户端发出Meteor.Call以获取pdf并将其取回下载。

哪个选项最简单,我应该怎么做。过去一天我一直在抓网,我无法弄清楚如何实现......

1 个答案:

答案 0 :(得分:1)

使用GridFS将您的项目作为集合存储在Mongo中(例如,请参阅this answer,它并不比插入任何其他集合真的顺便更难)。然后,您可以通过正确发布来控制对任何其他集合的文件集访问:

Meteor.publish('fileCollection', function(){
    if (this.userId) return fileCollection.find();
});

通过检查用户是否拥有ID,我们就知道他们是否是登录用户。针对特定用户交互进一步测试ID,添加可以访问文件的用户ID的数组字段(然后对用户ID位于.publish()中的数组中的集合执行.find())或发布文件通过检查它们是否具有任何非空ID,向上述所有用户发送。