PHP Lumen Service App

Pada artikel kali ini kita akan membuat web service menggunakan PHP menggunakan framework Lumen dari Laravel.

Instalasi Lumen

Pertama kita pastikan bahwa di PC kita sudah terinstall php , dan pastikan juga php tersebut dapat di akses. kita akan mengeceknya dengan melakukan sintaks "php --version" contohnya seperti gambar di bawah ini. ini dilakukan agar kita bisa memanggil PHP CLI. jika belum bisa anda bisa mengaskses link ini PHP CLI

Pengecekan Versi PHP

Setelah itu mari kita install Composer. Composer adalah perangkat/software untuk mengelola dependensi di PHP. Composer mengijinkan Anda untuk menginstall dan mengelola modul-modul yang dibutuhkan dalam proses pengembangan aplikasi berbasis website. kita akan coba mengecek apakah composer sudah terinstall atau belum dan kalau belum anda bisa coba mengakses link ini : Install Composser. mengeceknya cukup mudah dengan cara ketik sintaks "composer" pada command line. maka akan muncul tampilan seperti gambar di bawah ini.

Composer

Sebenernya ada beberapa cara untuk menginstall lumen di Perangkat kita, namu kali ini kita akan coba menginstall Lumen melalui Composer Installer. disini kita hanya perlu memanggil sintak composer create-project --prefer-dist laravel/lumen namaAplikasi. pada kali ini kita akan menamakan aplikasi kita LumenServiceApp.

composer create-project --prefer-dist laravel/lumen LumenServiceApp

setelah itu kita coba jalankan dengan menggunakan sintak "php -S localhost:8000 -t public" pada folder LumenServiceApp. lalu kita akan coba mengakses web service kita pada browser pada alamat "http://localhost:8000
 
Web Service dari Lumen dengan url Localhost:8000


Routing Lumen

Anda akan menentukan semua rute untuk aplikasi Anda di file routes / web.php. Rute Lumen paling dasar cukup menerima URI. mari kita coba buka file routes/web.php dan menambahkan routing /hello-world seperti gambar di bawah


Menambahkan route "/hello-world"

Setelah itu kita akan menambahkan variable nama pada router yang sebelumnya kita buat, nama disini nantinya kita bisa diisi sesuai dengan keinginan kita sehingga data yang diisikan bisa dinamis.



Menambahkan variable "$name" pada route "/hello-world"

Dalam Lumen ada beberapa metod yang bisa kita gunakan yaitu sebagai berikut :
GET, POST, PUT, PATCH, DELETE, OPTIONS 

Contoh Routing Method di Lumen


Middleware Lumen

Middleware HTTP menyediakan mekanisme yang mudah untuk memfilter permintaan HTTP yang memasuki aplikasi Anda. Misalnya, Lumen menyertakan middleware yang memverifikasi bahwa pengguna aplikasi Anda diautentikasi. Jika pengguna tidak diautentikasi, middleware akan mengarahkan pengguna ke layar login. 

Namun, jika pengguna diautentikasi, middleware akan mengizinkan permintaan untuk melanjutkan lebih jauh ke dalam aplikasi. Tentu saja, middleware tambahan dapat ditulis untuk melakukan berbagai tugas selain otentikasi. Middleware CORS mungkin bertanggung jawab untuk menambahkan header yang sesuai ke semua respons yang keluar dari aplikasi Anda. Middleware logging mungkin mencatat semua permintaan yang masuk ke aplikasi Anda. 

Semua middleware harus disimpan di direktori app / Http / Middleware.

Kita akan membuat alur dimana ketika mengakses halaman scores akan akan mengakses juga middleware login. pertama kita akan membuat file " app/Http/Middleware/LoginMiddleware.php"

File app/Http/Middleware/LoginMiddleware.php


Lalu kita daftarkan middle yang telah di buat pada lumen dengan cara menambahkannya pada file "bootstrap/app.php". Dalam middleware login terdapat ketentuan jika terdapat input username dengan isian tedc dan password dengan isisan rahasia maka akan melewati middleware login apabila ada salah satu yang salah atau kosong maka proses akan tertahan di middleware.

Registrasi Middleware "LoginMiddleware.php" dengan nama middleware "login"

Lalu jangan lupa tambahkan pada file "routes/web.php" untuk menambahkan routing scores yang akan kita beri middleware login . 

routes/web.php

Setelah itu kita akan mencoba mengaksesnya melalui browser


Berhasil mengakses apabila menambahkan variabel yang ditentukan

Apabila salah akan ada pesan sebagai berikut




Controller Lumen

Controller adalah Struktur (Class dan function) di Lumen yang digunakan untuk mengatur alur proses (business logic), baik untuk mengembalikan response, menghubungkan ke model dan views maupun hanya menggunakan model saja. 

1. Model adalah Struktur (Class dan function) di Lumen yang digunakan untuk melakukan koneksi dan query ke Database. 
2. View adalah template datau halaman untuk ditampilkan di browser. 

Controllers disimpan di direktori app/Http/Controllers.

Untuk saat ini kita akan membuat route "/users" yang akan menampilkan isi dari controller UserController, pertama tama kita akan membuat controllernya terlebih dahulu


UsersController.php


dan jangan lupa tambahkan pada router endpoint "/users" untuk mengakses UserController function Index

Menambahkan endpoint "/users"

Setelah itu kita coba akses via browser

Respon endpoint "/user"


Sekian tutorial mengenai Simple PHP Lumen Service App, mohon maaf apabila banyak sekali kekurangan

Terima kasih
Next Post Previous Post
No Comment
Add Comment
comment url