To je velmi možné a bezpečným způsobem pomocí balíčků cfs:standard-packages
a cfs:filesystem
. Upřímně řečeno, nešel jsem do hloubky vaší otázky.
Je to krásný balíček. O balíčcích výše si můžete přečíst zde podrobně .
KÓD PRO VYTVOŘENÍ KOLEKCE SYSTÉMU SOUBORŮ
var imageStore = new FS.Store.FileSystem("YOUR_COLLECTION_NAME");
YOUR_COLLECTION_NAME = new FS.Collection("YOUR_COLLECTION_NAME", {
stores: [imageStore]
});
Ve zkratce. Soubory budou uloženy u sourozence do bundle/
umístění na cfs/files/YOUR_COLLECTION_NAME
. Informace o souboru budou uloženy ve sbírce cfs.YOUR_COLLECTION_NAME.filerecord
a dočasné umístění bude použito pro interní účely s kolekcí cfs._tempstore.chunks
jak je uvedeno níže.
Pokud uložíte jakýkoli soubor pomocí výše uvedeného balíčku. Metadata budou uložena do cfs.YOUR_COLLECTION_NAME.filerecord
jak je uvedeno níže
{
"_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")
}
}
}
na straně klienta můžete získat odkaz na soubor dokumentu pomocí
YOUR_COLLECTION_NAME.find({"_id" : "TBmxbsL2cMCM2tEc7"}).url();
Tato adresa URL je bezpečný odkaz na soubor na základě tokenu, nikoli přímé umístění na váš server. Můžete nastavit další povolení/zakázat nastavení pro stahování a věci stejně jako běžné sbírky. Doufám, že to pomůže!