访问fileObj storeName或key collectionFS

时间:2016-05-19 22:02:29

标签: angularjs meteor nginx angular-meteor collectionfs

如何使用collectionFS使用key值插入文件后进入回调?

Images.insert(file, function (err, fileObj) {
  if (err) {
    console.log(err);
  } else {
    console.log('success', fileObj);
    setTimeout(function () {
      console.log('url', fileObj.url());
      let url = fileObj.url('images');
      $scope.slideshows.url = `${url}`
      $scope.$apply();
    }, 2000);
  }
});

我正在制作处理文件上传的cms以显示在不同的应用中,我可以使用cms中的{{image.url}}查看上传的文件,但我无法查看在其他应用中使用此方法上传的图片。

每个应用都连接到同一个数据库,我使用以下方式将图像上传到我的服务器:

Images = new FS.Collection("images", {
  stores: [new FS.Store.FileSystem("images", {path: '/home/uploadedimages'})]
});

然后我使用nginx来提供这些图片,以便我可以通过http://domain.com/uploadedimages访问它们。

为了解决我的问题,我需要以某种方式获取collectionFS存储的此模式中的key值:

{
    "_id" : "5BEe4maLCMFtHAZAj",
    "original" : {
        "name" : "wantedposter.jpg",
        "updatedAt" : ISODate("2016-05-19T13:34:32.050Z"),
        "size" : 28828,
        "type" : "image/jpeg"
    },
    "uploadedAt" : ISODate("2016-05-19T21:30:54.299Z"),
    "copies" : {
        "images" : {
            "name" : "wantedposter.jpg",
            "type" : "image/jpeg",
            "size" : 28828,
            "key" : "images-5BEe4maLCMFtHAZAj-wantedposter.jpg",
            "updatedAt" : ISODate("2016-05-19T21:30:54Z"),
            "createdAt" : ISODate("2016-05-19T21:30:54Z")
        }
    }
}

所以我可以做/uploadedimages/:key

问题

有没有办法从collectionFS获取key值?

0 个答案:

没有答案