Laravel 5.8 Upload File dengan Dropbox API
Dropbox adalah sebuah media penyimpanan online untuk berbagai file atau berkas, di artikel ini saya akan membahas bagaimana membuat aplikasi laravel untuk mengupload berkas gambar ke Dropbox menggunakan laravel package yang disebut spatie/flysystem-dropbox. Paket modul tersebut akan berguna sebagai penghubung antara filesystem laravel dengan dropbox.
Kebutuhan yang diperlukan
----- Framework laravel versi 5.6 ke atas.----- Database server yang sudah terinstall.
----- Akun Dropbox
Pengaturan Dropbox API
Sebelum kita terjun ke aplikasi laravel, pertama kali kita harus membuat Dropbox API di akun kita. Dengan cara membuatnya disini : https://www.dropbox.com/developers/apps/create . Pilih Dropbox Api, baru Pilih App folder, terakhir masukan nama aplikasi dan klik Create app.
Maka kita langsung diarahkan ke halaman settings API kita, masih di halaman yang sama klik generated access token, untuk mendapatkan token sebagai kunci mengakses API kita.
Membuat Aplikasi Laravel
Untuk membuat aplikasi laravel seperti biasa kita ketikan perintah ini di terminal.composer create-project --prefer-dist laravel/laravel sutandione
Membuat Model, Migration, dan Controller
Setelah masuk ke folder projek "sutandione" yang dibuat tadi, kita harus membuat Model untuk menyimpan nama berkas kita ke dalam database untuk itu dibutuhkan juga Controller dan Migrations, berikut perintahnya :
php artisan make:model Berkas -mc
Model Berkas
Pertama kita akan ubah script model menjadi sesuai dengan kebutuhkan aplikasi kita, yang dimana memerlukan beberapa field yaitu : nama, ekstensi, ukuran.Migration Berkas
Masuk ke bagian Migration disini untuk membuat table dan field yang ada di database, seperti yang ada di Model, kita akan menambahkan field tersebut.Selanjutnya kita mengeksekusi Migration yang kita buat, tapi terlebih dahulu kita harus mengatur file .env yang berguna sebagai tempat konfigurasi aplikasi laravel. disini kita mengubah konfigurasi database kita sesuai menjadi :
Jangan lupa buat dulu database sesuai dengan nama DB_DATABASE, lalu kita jalankan perintah untuk membuat database.
php artisan migrate
Instalasi dan Konfigurasi Paket Modul
Sekarang melakukan instalasi spatie/flysystem-dropbox menggunakan composer.
composer require spatie/flysystem-dropbox
Selesai menginstall paket modul kita perlu setting di config/filesystems.php dan kita akan menambahkan driver baru untuk filesystem dengan nama dropbox, seperti dibawah ini.
Seperti yang dilihat kita menambahkan driver baru yaitu dropbox, disitu ada keterangan authorizationToken yang mengarahkan ke file .env kita, maka bisa kita tambahkan token yang kita dapat diawal ke file .env kita sekarang.
DROPBOX_TOKEN=Token_kita
Setelah menambah driver Dropbox, kita perlu membuat service provider untuk menjalankannya.
php artisan make:provider DropboxServiceProvider
Selanjutnya membuat Service Provider yang kita buat dikenali oleh aplikasi, sehingga harus menambahkan script di bawah ini ke config/app.php pada bagian Package Service Provider
Berikutnya tinggal ubah script DropboxServiceProvider menjadi seperti ini
Dengan ini kita sudah selesai mengintegrasikan filesystem dropbox ke aplikasi kita.
Berkas Controller
Pada bagian ini kita mulai dengan membuat Controller yang berguna sebagai pengatur hubungan antara Model dan View di aplikasi kita. Di dalam Controller aplikasi kita memiliki beberapa function atau fungsi yaitu : index,store,view,download,delete yang akan digunakan untuk callback dari Route kita nanti.Routing
Route di laravel bertujuan untuk mendaftarkan URI kita sendiri agar bisa mengakses Controller aplikasi kita yang sebelumnya telah dibuat. Disini kita membuat 5 Route sesuai dengan yang ada di Controller.Berkas View
Sampai pada bagian terakhir dari aplikasi laravel kita yaitu View, berbeda dengan function view yang ada di Controller yang berfungsi untuk menampilkan gambar, View yang ini berfungsi sebagai tampilan atau user interface dari aplikasi kita. Sebelumnya kita buat dulu file viewnya di folder resource/views, buat file dengan nama "index.blade.php" .Selamat aplikasi kita sudah selesai tinggal jalankannya lewat terminal.
php artisan serve
Hasil akhir dari aplikasi yang dibuat
Sekian dari artikel Laravel 5.8 Upload File dengan Dropbox API, Semoga bermanfaat.
No comments: