Ошибка AWS S3 403 при попытке загрузить изображение с помощью React

#reactjs #amazon-web-services #amazon-s3

#reactjs #amazon-веб-сервисы #amazon-s3

Вопрос:

Я пытаюсь внедрить систему загрузки изображений в своем приложении React и загрузить это изображение в AWS S. С помощью кода, который у меня есть при загрузке изображения, я получаю сообщение об ошибке 403 запрещено. Я пробовал несколько методов, ничего не работает, я проверял настройки сто раз, по-прежнему одно и то же сообщение об ошибке. Конечно, когда учетные данные не в порядке, я получаю ошибку 400 bad request. Это проблема на стороне клиента или на стороне сервера?

Я также использую дополнение CORS для обхода, оно работает с другими API без проблем. Вот простой код, который я использую

 import S3FileUpload from 'react-s3';
import React from 'react'
import S3 from 'react-aws-s3'

const FileUpload = () => {
    const fileuploader= (e) => {
    
        const config = {
            bucketName: process.env.REACT_APP_BUCKET_NAME,
            region: process.env.REACT_APP_REGION,
            accessKeyId:process.env.REACT_APP_ACCESS_ID,
            secretAccessKey:process.env.REACT_APP_ACCESS_KEY
        }
       const file = e.target.files[0]
       console.log(file)                 
        
        const ReactS3Client = new S3(config)
        ReactS3Client.uploadFile(file,config)
        .then( data => {console.log(data)})
        .catch(err => alert(err))    
    }


    return(
        <>
        <input
        type="file"
        onChange={fileuploader}
        />
        </>
    )

}

export default FileUpload

  

Спасибо, что прочитали мой пост.

Комментарии:

1. Работает ли загрузка, если вы попытаетесь сделать это вручную, используя те же учетные данные / роль, что и ваш reactjs?

2. Нет, это не работает, я получаю ту же ошибку, ссылка, которую я получаю, работает правильно. Я прочитал много сообщений о том, что ошибка 400 или ошибка 403 появляется из-за региона, что, я уверен, не так, поскольку работают другие API