PHP Lumen Client App

PHP Lumen Client App

Image result for lumen logo
Hai sobat bukan ngoding, kali ini saya akan membagikan tutorial bagaimana cara membuat aplikasi client. Sebelumnya kita membuat  aplikasi web service REST API server, kali ini kita akan buat aplikasi client nya dan bagaimana cara mengakses data dari server tersebut.
Pertama install terlebih dahulu project lumen client app menggunakan composer seperti dibawah ini.
Screenshot_107
Disini saya membuat project dengan nama lumen-client-app, kemudian masuk ke directory aplikasi client tersebut, dan jalankan servernya pada port 9000.
Screenshot_108.png
Coba akses localhost:9000 pada browser, jika tampilannya seperti dibawah ini maka telah berhasil.
Screenshot_109.png
Membuat Fungsi Untuk Mengakses Web Service JSON (Get Request)
Setelah jalankan servernya, kita buka project lumen-client-app pada text editor kita, buka file routes/web.php dan buat routing seperti berikut.
Screenshot_110.png
Buat controller dengan nama app/Http/Controllers/PostsController.php, kemudian buat function getRequestJson dengan code nya seperti dibawah ini.
Screenshot_111.png
Masuk kedalam folder resource/views, buat sebuah folder dengan nama posts kemudian buat file getRequestJson.php di dalam folder posts tersebut.
Screenshot_112.png
Dalam getRequestJson.php ini kita akan membuat struktur HTML, tambahkan script berikut di dalam getRequestJson.php.
Screenshot_113.png
Sebelum kita test di browser tentunya kita perlu menjalankan terlebih dahulu server web servicenya. Teman-teman bisa masuk ke project sebelumnya, yaiut “php-lumen-service-app” dan buka terminalnya, disini saya menggunakan text editor visual studio code yang di dalamnya sudah tersedia fitur terminal untuk memudahkan kita dalam menjalankan servernya. Untuk menjalankan web service nya kita gunakan port 8000 seperti berikut.
Screenshot_119.png
Sekarang kita masuk lagi ke project lumen-client-app, untuk mengecek terlebih dahulu apakah data nya sudah berhasil diambil dari web service kita bisa menggunakan function dd() atau biasa disebut dump, kita lihat isian data dari respon dengan menambahkan function dd() sebelum return view.
Screenshot_122.png
Lalu akses endpoint http://localhost:9000/posts/get-request-json, jika respon nya seperti berikut maka data telah berhasil di get dari web service.
Screenshot_123
Bisa dilihat isi dari response adalah 4 data berbentuk array yang didapat dari web service. Selanjutnya kita hapus kembali function dd tersebut atau bisa di berikan comment saja, kemudian akses kembali endpoint http://localhost:9000/posts/get-request-json, jika berhasil tampilan akan seperti berikut.
Screenshot_120.png
Membuat Fungsi Untuk Mengakses Web Service XML (Get Request)
Sekarang kita akan membuat request client yang sama, namun menggunakan format XML. Tambahkan routing baru pada file web.php.
Screenshot_118.png
Buat function baru getRequestXml() pada PostsController.
Screenshot_124.png
Untuk format xml kita perlu menginstall terlebih dulu library simple xml.
composer require ext-simplexml
Seperti biasa sebelum kita akses endpoint http://localhost:9000/posts/get-request-xml, kita lakukan dump terlebih dahulu untuk melihat isian dari response, jika tampilan seperti berikut maka sudah berhasil di get.
Screenshot_125.png
Hapus kembali function dump atau berikan comment, lalu akses kembali endpointnya.
Screenshot_126.png
Membuat Fungsi Untuk Mengakses Web Service JSON (PostRequest)
Sekarang kita akan melakukan post data atau mengirimkan data dari client, pertama buat terlebih dahulu routing nya.
Screenshot_128
Kemudian buat function postRequsetJson() pada PostsController.
Screenshot_129
Selanjutnya kita buat tampilan view pada folder posts/postRequestJson seperti berikut.
Screenshot_130
Jika berhasil, maka tampilan akan seperti berikut.
Screenshot_127
Cek juga di database kita apakah data tersebut sudah berhasil di create atau belum.
Implementasi CRUD akses Rest API menggunakan Dummy API
Kali ini kita akan melakukan CRUD namun tidak mengakses pada web service yang sudah kita buat, melainkan menggunakan dummy api yang kita akses di http://dummy.restapiexample.com/
Pertama kita buat terlebih dahulu routingnya untuk melakukan get data.
Screenshot_131.png
Buat Controller dengan nama EmployeeController, kemudian buat function index seperti berikut.
Screenshot_132.png
Buat folder employee pada resources/views dan buat file index.php di dalamnya, kemudian buat tampilan html seperti berikut.
Screenshot_133.png
Selanjutnya test endpoint http://localhost:9000/employee, jika berhasil maka tampilan akan seperti berikut.
Screenshot_135.png
Berikutnya kita akan buat endpoint untuk akses detail employee nya, tambahkan routing untuk akses detail employee.
Screenshot_1
Buat method baru dengan nama show pada EmployeeController.
Screenshot_11.png
Selanjutnya buat file view nya, buat file baru dengan nama show.php dan tuliskan code html seperti berikut.
Screenshot_3.png
Langsung saja kita akses endpointnya dengan mengirimkan parameter id 1 http://localhost:9000/employee/1, jika berhasil, maka tampilan akan seperti berikut.
Screenshot_4.png
Berikutnya kita akan buat endpoint untuk membuat data employee baru, tambahkan routing untuk create employee.
Screenshot_5.png
Buat method baru dengan nama store pada EmployeeController.
Screenshot_6.png
Di controller kita membuat data statis dengan mengirimkan data seperti diatas. Selanjutnya buat file view baru dengan nama store.php pada folder resouces/views/employee.
Screenshot_7.png
Akses endpoint http://localhost:9000/create, jika berhasil maka tampilan akan seperti berikut.
Screenshot_8.png
Untuk memastikan apakah data yang kita create sudah berhasil dibuat kita bisa akses endpoint http://localhost:9000/employeekembali lalu lihat data paling akhir.
Screenshot_12.png
Selanjutnya kita akan melakukan update data, buat routing baru seperti berikut.
Screenshot_9.png
Buat function update pada EmployeeController seperti berikut.
Screenshot_14
Dalam update data juga kita mengirimkan data statis pada variabel $data, yang mana akan kita data employee yang sebelumnya baru saja kita buat dengan id ‘270968’.
Selanjutnya buat file view dengan nama update.php pada folder resources/views/employee.
Screenshot_15.png
Kita akan update data dengan id 270968, maka kita akses endpoint http://localhost:9000/update/270968, jika berhasil maka tampilan akan seperti berikut.
Screenshot_17.png
Untuk memastikan kita bisa akses endpoint http://localhost:9000/employee, lalu check id ‘270968’ yang awalnya kita create dengan nama ‘Ryadi’ kemudian kita update dengan nama ‘Muhamamd Harisz Ryadi’.
Screenshot_18
Yang terakhir kita akan melakukan delete data, buat routing baru seperti berikut.
Screenshot_10.png
Buat function baru dengan nama destroy, dan tuliskan code seperti berikut.
Screenshot_19.png
Pada return kita tidak arahkan ke views, kita hanya return dengan nilai balik json sesuai isi dari dummy api.
Sekarang kita akan delete data yang telah kita update sebelumnya yaitu dengan id ‘270968’ maka kita akses endpoint http://localhost:9000/delete/270968, jika berhasil maka respon akan seperti berikut.
Screenshot_20.png
Untuk lebih memastikan kita akses kembali endpoint http://localhost:9000/employee lalu cek apakah id ‘270968’ sudah terhapus atau belum.
Screenshot_21.png
Sekian tutorial kali ini, selamat mencoba.

Comments

Popular posts from this blog

Microservice

Directive dan List Vue.js

Form dan Filtering Vue.js