Tutorial Laravel 5.5 - Mengupload Image Menggunakan Amazon S3


Pada artikel kali ini akan dijelaskan secara singkat bagaimana melakukan upload image menggunakan laravel 5.5 dan Amazon S3.


1.) Install package AWS

Langka pertama adalah jalankan perintah berikut pada command prompt direktori program anda berada.


composer require league/flysystem-aws-s3-v3


2.) Setting konfigurasi

Langkah berikutnya adalah bukalah file filesystems.php yang terdapat pada direktori config/. Perhatikan bagian kode berikut


        's3' => [
            'driver' => 's3',
            'key' => env('AWS_ACCESS_KEY_ID'),
            'secret' => env('AWS_SECRET_ACCESS_KEY'),
            'region' => env('AWS_DEFAULT_REGION'),
            'bucket' => env('AWS_BUCKET'),
        ],

Tambahkan konstanta-konstanta AWS tersebut pada file .env program anda seperti kode berikut


AWS_ACCESS_KEY_ID=your_key_here
AWS_SECRET_ACCESS_KEY=your_secret_here
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=my-bucket

Sesuaikan konfigurasi tersebut dengan konfigurasi dari Amazon S3 Bucket anda. Sampai tahap ini berarti program laravel anda sudah terhubung dengan Amazon S3 Bucket.


3.) Kode untuk Upload

Langkah selanjutnya adalah bagaimana kode untuk melakukan upload image ke bucket tersebut.


    public function uploads3(Request $request){
        $image = $request->file('fileToUpload');
        $imageFileName = time() . '.' . $image->getClientOriginalExtension();
        $s3 = \Storage::disk('s3');
        $filePath = '/path-direktori/' . $imageFileName;
        $s3->put($filePath, file_get_contents($image), 'public');

    }

Kode di atas adalah contoh singkat bagaimana melakukan upload ke Amazon S3.

  • $image digunakan untuk mendapatkan request dari form type file inputan sebelumnya.
  • $imageFileName saya gunakan untuk sebagai nama file yang nantinya akan diupload. Dapat anda sesuaikan sendiri kodenya sesuai kebutuhan.
  • $filePath adalah variabel yang berisi nama path direktori pada Amazon S3 anda.

Contoh yang saya berikan hanyalah contoh sederhana. Anda dapat melakukan berbagai macam manipulasi image sebelum melakukan proses upload, misalnya mengubah ukuran, dan lain sebagainya. 

Demikianlah penjelasan pada artikel Tutorial Laravel 5.5 - Mengupload Image Menggunakan Amazon S3. Semoga penjelasan dan contoh yang saya berikan pada artikel ini dapat dimengerti. Selamat mencoba.
Tutorial Laravel 5.5 - Mengupload Image Menggunakan Amazon S3 Tutorial Laravel 5.5 - Mengupload Image Menggunakan Amazon S3 Reviewed by Donny Winarto on July 30, 2018 Rating: 5

No comments:

Powered by Blogger.