Dit is heel goed mogelijk en op een veilige manier met behulp van pakketten cfs:standard-packages
en cfs:filesystem
. Eerlijk gezegd ben ik niet op uw vraag ingegaan.
Het is een mooi pakket. U kunt hierboven hier uitgebreide pakketten lezen .
CODE OM BESTANDSSYSTEEMCOLLECTIE TE MAKEN
var imageStore = new FS.Store.FileSystem("YOUR_COLLECTION_NAME");
YOUR_COLLECTION_NAME = new FS.Collection("YOUR_COLLECTION_NAME", {
stores: [imageStore]
});
Kortom. De bestanden worden bij de broer of zus opgeslagen in bundle/
locatie op cfs/files/YOUR_COLLECTION_NAME
. Informatie over het bestand wordt opgeslagen in de verzameling cfs.YOUR_COLLECTION_NAME.filerecord
en tijdelijke locatie wordt gebruikt voor interne doeleinden met verzameling cfs._tempstore.chunks
zoals hieronder.
Als u een bestand opslaat met het bovenstaande pakket. De metadata wordt opgeslagen in de cfs.YOUR_COLLECTION_NAME.filerecord
zoals hieronder
{
"_id" : "TBmxbsL2cMCM2tEc7",
"original" : {
"name" : "photo.jpg",
"updatedAt" : ISODate("2017-07-06T12:54:50.115Z"),
"size" : 2261,
"type" : "image/jpeg"
},
"uploadedAt" : ISODate("2017-07-08T06:58:32.433Z"),
"copies" : {
"YOUR_COLLECTION_NAME" : {
"name" : "photo.jpg",
"type" : "image/jpeg",
"size" : 2261,
"key" : "YOUR_COLLECTION_NAME-TBmxbsL2cMCM2tEc7-photo.jpg",
"updatedAt" : ISODate("2017-07-08T06:58:32.475Z"),
"createdAt" : ISODate("2017-07-08T06:58:32.475Z")
}
}
}
aan de kant van de klant kunt u de link naar het documentbestand krijgen met
YOUR_COLLECTION_NAME.find({"_id" : "TBmxbsL2cMCM2tEc7"}).url();
Deze url is een op tokens gebaseerde veilige link naar het bestand in plaats van een directe locatie naar uw server. U kunt aanvullende instellingen voor toestaan/weigeren instellen voor downloaden en dingen, net als bij normale collecties. Ik hoop dat dit helpt!