Я работаю над приложением, в котором администратор может загрузить расписание (просто файл), а пользователь может загрузить этот загруженный файл. Теперь он работает с функцией загрузки в Meteor, и декодированный файл сохраняется в БД Mongo.
Проблема в том, что я могу загружать только файлы размером около 16 МБ. Я провел некоторое исследование, и, очевидно, вы можете исправить это с помощью GridFS. Я очень новичок в этом, и документация, кажется, не помогает вообще. Может кто-нибудь дать мне простой пример того, как использовать GridFS для решения моей проблемы? Или кто-нибудь порекомендует какие-то другие решения?
Это мой метод UploadSchedule, который я использую для загрузки файла на сервер:
uploadSchedule() {
if (this.fileListNextMonth == null) {
this.alertController.create(
{
title: "Error",
subTitle: "Cannot upload file!",
buttons: ['Ok']
}
).present();
} else {
this.fileName = this.fileList[0].name;
this.getBase64(this.fileList[0]).then(
data =>
this.scheduleProvider.uploadSchedule(data, this.fileName, true).then(observable => {
const subscription = observable.subscribe(data => {
console.log("data: " + data);
}, err => console.error(err), () => subscription.unsubscribe());
})
);
}
}
В моем ScheduleProvider есть метод (uploadSchedule), который отправляет запрос на сервер с определенным файлом. В бэкэнде я просто делаю вставку с загруженным файлом, поэтому он будет сохранен в базе данных в виде строки.
Надеюсь, кто-нибудь может мне помочь.
Спасибо!