#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