Express.js. Как добавить параметр в конечную точку, которая отвечает за загрузку файла? - PullRequest
0 голосов
/ 15 января 2019

Я пытаюсь использовать Express.js с Multer для загрузки файла. Мне нужно передать: ID родительской папки, куда файл загружен. Позже я хочу использовать это: id и сохранить его в БД в качестве поля нового добавленного файла. Итак, есть две части: первая - загрузить файл на сервер, вторая - сохранить данные об этом файле в БД На данный момент у меня есть конечная точка для загрузки файла

module.exports = {
setUp(router) {
    router.get('/file/:id', fsHandlers.file)
    router.get('/folder/:id', fsHandlers.folder)
    router.get('/root', fsHandlers.root)
    router.get('/search', fsHandlers.search)

    router.use(['/folder/:id/*','/file/:id/*'], bodyParser.json({
        type: "*/*"
    }))
    router.post('/folder/:id/new', fsHandlers.createFolder)
    router.post(['/folder/:id/rename','/file/:id/rename'], fsHandlers.rename)

    router.post('/file/upload', fsHandlers.upload().single('item'), fsHandlers.uploadFile)
    // router.post('/file/:folderId/new', fsHandlers.postFileToFolder)
    // router.post('/file/:path/new', fsHandlers.postFileToPath)

    router.delete(['/folder/:id','/file/:id'], fsHandlers.delete)
}

}

, где

router.post('/file/upload', fsHandlers.upload().single('item'), fsHandlers.uploadFile)

- это маршрут с использованием промежуточного программного обеспечения Multer. Это работает, но я хотел бы добавить что-то подобное с: ID

router.post('/file/upload/:ID', fsHandlers.upload().single('item'), fsHandlers.uploadFile)

но тогда, когда я отправляю запрос, возникает ошибка:

SyntaxError: Неожиданный токен - на разборе

Любая помощь? Существует другой способ передачи: ID как req.param, чтобы иметь возможность использовать его при сохранении данных файла в БД?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...