Я пытаюсь загрузить массив изображений, используя данные формы и xhttp. Клиент: React Native - Обе платформы. Сервер: Узел, работающий на GCP. Изображения входят в s3.
Проблема: изображения загружаются в s3. И когда я просматриваю логи своего сервера, я вижу, что сервер отправляет 200. Но клиент всегда получает код ответа 0. А также xhttp выходит из состояния 1 -> 4.
Мы добавили CORS на обоих концахтак что это не может быть проблемой. Я принимаю и заголовки контента. Но не знаю, что происходит.
Любая помощь приветствуется.
React-Native Client:
upload () {
let url = "MYAPIGOESHERE"
let uploadBody = new FormData()
let imagesUpload = []
imagesUpload.push({type:'image/jpg',uri:this.state.coverImage[0].uri,name:"cover"})
uploadBody.append('photos',{uri:this.state.coverImage[0].uri, type:'image/jpg', name:"cover"})
uploadBody.append('duration',this.state.duration)
var xhttp = new XMLHttpRequest()
xhttp.onreadystatechange = function() {
console.log(this.readyState+" "+this.statusText)
if (this.readyState === 4) {
alert(this.status)
if (this.status === 200) {
console.log(this.responseText);
} else {
console.log(this);
}
}
if(this.readyState === 3)
{
console.log("Inside 3")
}
if(this.readyState === 2)
{
console.log("Inside 2")
}
};
xhttp.open("POST", url)
xhttp.setRequestHeader('Accept', 'application/json');
xhttp.setRequestHeader('Access-Control-Allow-Origin', '*');
xhttp.responseType = 'json'
xhttp.send(uploadBody)
}