Я пытаюсь выполнить загрузку нескольких частей на AWS S3 из моего React. JS интерфейс с aws усилением.
Использование Ioni c v5 framework.
Мне нужно загружать до 150 изображений одновременно.
У меня настроено aws усиление в моем файле конфигурации и индексном файле.
Я получаю сообщение об ошибке: Error: Unsupported body payload object
Что может быть причиной этого?
import React, { useState, useEffect, useRef } from "react";
import { IonButton, IonButtons, IonInput, IonBackButton, IonContent, IonHeader, IonList, IonItem, IonItemGroup, IonLoading, IonItemDivider, IonLabel, IonPage, IonTitle, IonToolbar, IonAlert, IonRadio, IonRadioGroup, IonListHeader, IonSlide, IonSlides, IonIcon } from '@ionic/react';
import { LinkContainer } from "react-router-bootstrap";
import { API, Storage } from "aws-amplify";
function JobInfo(props) {
const file = useRef(null);
function handleFileChange(event) {
file.current = event.target.files[0];
}
async function handleSubmit(event) {
event.preventDefault();
setShowLoading(true);
try {
const attachment = file.current
const filename = `${job.JobId}-${file.name}`;
const stored = await Storage.put(filename, file, {
contentType: file.type
});
return stored.key;
} catch (e) {
alert(e);
}
setShowLoading(false);
}
var centerText = {textAlign: "center"}
let today = new Date().toDateString();
let start = new Date(date).toDateString();
return(
<IonPage>
<IonHeader>
<IonToolbar>
<IonButtons slot="start">
<IonBackButton/>
</IonButtons>
<IonTitle>Upload Images</IonTitle>
</IonToolbar>
</IonHeader>
<IonContent className="ion-padding">
<div style={{display: "flex", justifyContent: 'center'}}>
<IonItem>
<IonInput name="file" multiple="true" id="file" type="file" onIonChange={(e) => handleFileChange}></IonInput>
</IonItem>
<IonButton expand="block" color="primary" strong="true" size="default" type="submit" onClick={handleSubmit} >Upload</IonButton>
</div>
<IonLoading
isOpen={showLoading}
onDidDismiss={() => setShowLoading(false)}
message={'Please Wait...'}
duration={6000}
/>
</IonContent>
</IonPage>
);