meteor和mongo的新手。
我在mongo中存储了一些JSON,我希望通过混淆的令牌公开公开,而不使用类似的东西:
//app/models/stuff.js
Stuff = new Mongo.Collection("stuff");
Meteor.publish("stuff", function (){
return Stuff.find();
});
//additionally, the client-side subscription
我只想通过URL路由参数或某种客户端标识符(比如可以在其中键入代码/令牌的文本字段)公开客户端直接请求的文件。
例如,http://website.com/view/abcdefghijklmnop
知道该链接的任何人都可以输入,并获取该文件。但是,如果没有给出每个令牌,就无法获得每个文件。
我想知道这是否是完成任务的最佳方式:
//app/server/stuff.js
Meteor.methods({
getStuff: getStuff
});
function getStuff(stuffId) {
var result = Stuff.find({_id: stuffId});
return result;
}
然后
//app/client/stuff.js
var json = Meteor.call('getStuff', 'abcdefghijklmnop');
答案 0 :(得分:1)
为什么不发布所要求的文件?
Meteor.publish('stuff', function (id){
check(id, String);
return Stuff.find(id);
});