Метеор и / личный каталог

Я использую/private каталог в Meteor 1.0.3 на данный момент для хранения и подачи документов PDF в браузер.

Например, у меня есть структура папок, например, так:

/application-name
 /private
  /files
   /users
    /user-name
     /pdf-file1.pdf 

У меня есть шаблон с событием нажатия кнопки. В этом случае я делаю пару вызовов к методам Meteor и, наконец, к серверному железному маршрутизатору.go('render-pdf') метод. В этих метеорных методах я используюfs node.js для:

(1) проверить, если/user-name каталог существует, и если его нет, я создаю его.

(2) создать файл pdf-file.pdf

Тогда на стороне сервера Iron Routergo('render-pdf') маршрут, снова используяfs node.js для:

(3) прочитайте созданный pdf-файл.pdf и

(4) наконец, сделать это в браузере

Проблема заключается в шаге (1), при создании/user-name каталог, Метеор сервер перезагружается. На шаге (2) сервер Meteor снова перезапускается.

Но самое главное, когда мой код запускается в первый раз, а каталог не существует (шаг (1)), я получаю сообщение об ошибке.

Затем я могу снова вызвать событие кнопки, на этот раз после того, как каталог был создан, и файл PDF отображается нормально.

Ошибка выглядит так:

Error: ENOENT, no such file or directory '/Users/myname/meteor/meteor-application/private/files/users/user-name/pdf-file.pdf' at Object.fs.openSync (fs.js:438:18) at Object.fs.readFileSync (fs.js:289:15) at [object Object].Router.route.name (meteor-application/both/routes.js:225:17) at boundNext (packages/iron:middleware-stack/lib/middleware_stack.js:251:1) at runWithEnvironment (packages/meteor/dynamics_nodejs.js:108:1) at packages/meteor/dynamics_nodejs.js:121:1 at [object Object].urlencodedParser (/Users/myname/.meteor/packages/iron_router/.1.0.7.15dqor4++os+web.browser+web.cordova/npm/node_modules/body-parser/lib/types/urlencoded.js:72:36) at packages/iron:router/lib/router.js:277:1 at [object Object]._.extend.withValue (packages/meteor/dynamics_nodejs.js:56:1) at [object Object].hookWithOptions (packages/iron:router/lib/router.js:276:1)

Вероятно, когда я добираюсь до этапа (4) попытки рендеринга файла, он либо еще не существует, либо приложение перезапускается. При следующей попытке приложение уже перезапустилось и файлы существуют.

У меня сложилось впечатление, что/private Каталог предоставляет место для обработки файлов, которые не влияют на выполнение приложения? Для меня это означает, что во время выполнения я могу добавить все, что захочу, без перезапуска приложения.

Маленькая история

Сначала я использовал/server каталог с./folder-name подкаталог. Это работало так же, как когда я добавлял папку и файлы, приложение не перезапускалось. Недостатком является то, что когда я развернул Meteor с помощью замечательного пакета Meteor-up (mup), пакет развертывания игнорировал эти файлы, если я не добавил*.js файл где-то внутри. И далее, если бы я создал «скрытую» структуру папок на своем экземпляре EC2, при развертывании каталог будет удален.

Итак, используя/private Папка решила эту проблему, или я так подумал. Структура папок и «ресурсы» развернуты. Но недостатком этого подхода является то, что когда я добавляю к нему «активы», кажется, он перезапускается -even though I though this wasn't something that was suppose to happen.

Вопрос

Как я могу добавить «активы» (в виде каталогов и файлов) под/private каталог без перезапуска приложения Метеор? Если это не может быть сделано, как я могу добавить «активы»в любом месте только на стороне сервера без перезапуска приложения?

пожалуйста, обратите внимание

При развертывании в производство мне бы хотелось, чтобы некоторые структуры папок оставались на месте, например:

/private/files/users

должен сказать там, в то время как

/user-name 

Каталог может быть динамическим. Я упоминаю об этом только потому, что прочитал, если вы/.directory-name, Метеор игнорирует папку и ее содержимое. Но это касается и развертываний.

Что мне действительно нужно

Папка только на стороне сервера, которая включается в комплект развертывания, и когда я добавляю «вещи» к нему во время выполнения, мое приложение не перезапускается ...

Любой способ включить/.hidden-folder в моемmup пакет развертывания или иметь/private папка не перезагружается каждый раз, когда я добавляюstuff к нему во время выполнения.

Ответы на вопрос(1)

Ваш ответ на вопрос