Загрузка файла Sails JS; Как проверить, является ли файл входным?
Я использую Sails JS v11.05.
Загрузка файла не является обязательным полем.
Как проверить, был ли файл загружен или нет?
Обычно я использую
if (!req.param('param')) {
// param does NOT exist - was not uploaded
// This does not apply to file input params.
}
// However, the following will break as it will start a listener (upstream)
if (!req.file('param')) {
// File was not uploaded
}
Все, что я хочу знать, является ли файл входным или нет, поэтому я не удосужился вызвать req.file('file'). Upload(), если он не был загружен.
Идеи?
1 ответ
Решение
Я не смог найти что-либо, чтобы сделать это, но мы можем использовать слушатель Upstream для загрузки пустого файла, но тогда он вернется и очистит uploadedFiles в обратном вызове.
Обратите внимание, что если вы запустите req.file('file_input'), вы можете убить сервер узла, так как он вызывает слушателя.
Для получения дополнительной информации см. https://www.npmjs.com/package/skipper
Решение
req.file('file_input').upload(options, function (err, uploadedFiles) {
if (err) return cb(err);
if (_.isEmpty(uploadedFiles)) return cb();
// A file was attached do
});