Membuat RESTful menggunakan Framework Laravel
Assalamualaikum wr. wb. pada artikel kali ini saya akan coba memberikan panduan singkat tentang cara membuat RESTful API menggunakan Framework Laravel. Untuk catatan saya menggunakan Laravel Versi 5.8 atau yang paling baru bisa dicek disini https://laravel.com/docs/5.8
Buat Projek Baru
buka command line atau saya menggunakan cmder dan buat sebuah projek baru Laravel dengan command dan tunggu sampai proses beres
composer create-project --prefer-dist laravel/laravel simple-laravel-rest
Konfigurasi .env
lakukan pengaturan konfigurasi .env dan sesuaikan dengan nama database nya dan cek apakah proses instalasi nya berhasil
php artisan serve
Membuat Model Product dan file Migration nya
langkah selanjutnya adalah membuat Model Product dan file migrasinya yaitu dengan perintah sebagai berikut
php artisan make:model Products -m
Kemudian buka juga file migration yang dibuat, difile tersebut kalian bisa mendefinisikan struktur tabel nya
Kembali ke terminal dan ketikan perintah migrate untuk memberi perintah ke Laravel untuk membuat kan tabel Product dan struktur nya yang sudah kita definisikan diatas
php artisan migrate
Buka file Model Products menggunakan IDE dan tambahkan fillable nya
Buat BaseController
Buat sebuah file BaseController yang nantiya akan diturunkan ke setiap Controller yang akan kita buat API nya
php artisan make:controller BaseController
BaseController ini memiliki dua method yaitu sendResponse dan sendError. sendResponse untuk mengeluarkan response yang telah berhasil diproses oleh server dan sendError mengeluarkan response error ketika terjadi pemrosesan data.
Buat ProductController
Buat file ProductController dengan perintah
php artisan make:controller ProductController
dibagian use kemudian panggil BaseController dan Model Product dan tambahkan Validator untuk memvalidasi inputan
Daftarkan ProductController di routes
Daftarkan ProductController yang dibuat tadi di file routes/api.php
Route::resource('products', 'ProductController');
Membuat GET ALL Product
Masih di file ProductController tambahkan method index untuk mengeluarkan response get all dari tabel products.
Buka POSTMAN dan akses URL berikut menggunakan method GET
localhost:8000/api/products
response yang berhasil akan sebagai berikut
Membuat POST Product
Buka file ProductController dan tambahkan method Store untuk menyimpan data yang akan kita input
Buka Postman dan buka URL menggunakan method POST berikut
localhost:8000/api/products
masih dalam Postman, bagian Body nya dan form data kemudian inputkan name dan detail nya, jika berhasil maka responsenya akan sebagai berikut
karena sudah memakai validasi (Validator) maka apabila kita tidak menginputkan misalkan key name maka response akan mengeluarkan pesan error sebagai berikut