Как загрузить файл в aws s3, используя php rest api? - PullRequest
0 голосов
/ 24 января 2020

Я новичок на 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».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...