Получение имени изображения, сгенерированного из multer - PullRequest
0 голосов
/ 09 января 2020

Я использую multer для загрузки файла. Он загружается нормально, но я не могу понять, как получить созданное имя файла. Я хотел бы отправить его обратно в ответ. Имя файла, которое было сделано, выделено в комментариях:

const storage = multer.diskStorage({
    destination: function (req, file, cb) {
        cb(null, '../app/src/assets/game/src/assets/images/')
    },
    filename: function (req, file, cb) {
        cb(null, file.fieldname + '-' + Date.now() + '.png') <!-- I need this in my postback response -->
    }
});

const upload = multer({ storage: storage }).single('avatar');

router.post('/upload/', function (req, res) {
    upload(req, res, function (err) {
        if (err) {
            // An error occurred when uploading
            throw err;
        }



        res.json({
            sucess: true,
            message: 'Image was uploaded successfully'
        });
        // Everything went fine
    })
});

1 Ответ

1 голос
/ 09 января 2020

Для получения имени изображения для загрузки одного изображения используйте req.file.filename:

res.json({
    success: true,
    message: 'Image was uploaded successfully',
    filename: req.file.filename
});

Для получения имени изображения для загрузки нескольких изображений используйте req.files:

let filenames = []
for(let i = 0; i < req.files.length; i++) {
    filenames.push(req.files[i].filename);
}
res.json({
    success: true,
    message: 'Image was uploaded successfully',
    filename: filenames
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...