как использовать исходное имя файла при загрузке в aws s3 с использованием preSignedUrl с nodejs response? - PullRequest
0 голосов
/ 14 июля 2020

Я работаю над preSignedURL для загрузки файлов с помощью nodejs. Все работает нормально, но проблема с файлами, которые хранятся в aws s3. Я принудительно управляю именем файла, а не исходным именем этого конкретного файла.

Это мой код.

router.get("/signedurl", auth, async (req, res, next) => {

    let key = `${req.user.id}/${uuid()}`;

    s3.getSignedUrl('putObject', {
        Bucket: 'autoxr-admin',
        ContentType: '*',
        Key: key
    }, (err, url) => {
        res.send({ key, url })
    })
   
})

Путь, чтобы получить заранее подписанный URL.

export const postContent =  (moduleName, desc, level, file ) => async dispatch => {
   try {
    dispatch({
        type: LOADING
    })
    let uploadConfig = await axios.get("http://localhost:5000/api/profile/signedurl");

    let data = await axios.put(uploadConfig.data.url, file, {
        headers: {
            'Content-Type': "*"
        }
    })
    dispatch({
        type: STOP_LOADING
    })

   } catch (error) {
       console.log(error)
   }
}

Теперь я не хочу, чтобы имя файла было случайным. Я просто хочу сохранить файлы с оригинальным именем файла.

С уважением

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