Я новичок на aws сервере, пишу php rest api для загрузки изображения в aws s3 bucket, но я не могу его загрузить. Я отправляю изображение в формате base64_encode и декодирую его перед загрузкой. ниже мой код.
if(isset($data['image'])){
$base=$data['image'];
$filename=base64_decode($base);
}
$result= $s3->putObject([
'Bucket' => 'bucketname',
'Key' => 'my-object',
'SourceFile' => $binary,
'ACL' => 'public-read',
]);
С помощью формы html я могу загрузить файл в aws s3, ниже код для загрузки из html формы
<form action="<?= $_SERVER['PHP_SELF']; ?>" method="POST" enctype="multipart/form-data">
<input type="file" name="image" />
<input type="submit" name="submit"/>
</form>
if(isset($_FILES['image'])){
$file_name = $_FILES['image']['name'];
$temp_file_location = $_FILES['image']['tmp_name'];
$result = $s3->putObject([
'Bucket' => 'bucketname',
'Key' => $file_name,
'SourceFile' => $temp_file_location,
'ACL' => 'public-read',
]);
}
Как мне изменить код загрузки формы html, чтобы он подходил для загрузки с помощью rest api? В html коде загрузки формы я определил «Key» => $ file_name и «SourceFile» => $ temp_file_location, но в случае остальных API я не знаю, что определить в «Key» и «SourceFile».