Jumat, 24 Agustus 2018

Tutorial membuat Web API


Assalamu'alaikum Warahmatullahi Wabarakatuh
Kali ini saya akan menshare tentang Tutorial membuat Web API
Cekidot...

Tutorial membuat Web API

Langkah 1 : Instalasi dan Konfigurasi Codeigniter
Sebelum melakukan instalasi dan konfigurasi Codeigniter, pastikan anda sudah mempersiapkan web server seperti xampp dll. Tetapi kali ini saya menggunakan xampp sebagai web servernya.

Jika anda sudah mempersiapkan xampp sekarang kita akan mulai tahapan menginstall codeigniter terlebih dahulu.

1.      Silahkan download codeigniter pada situs resminya www.codeigniter.com
2.      Kemudian extrack/ unzip file CodeIgniter-3.1.9.zip.
3.      Setelah itu silahkan rename folder CodeIgniter-3.1.9 menjadi rest_server
4.      Pindahkan folder api tersebut ke folder C:\xampp\htdocs.
5.      Sekarang silahkan bukan web browser anda dan masukkan http://localhost/rest_server/ pada web address maka akan muncul seperti ini :

Sampai pada tahap ini anda sudah berhasil menginstall codeigniter, tahap selanjutnya adalah melakukan konfigurasi dasar, silahkan buka file config.php
$config['base_url'] = '';
Dan ubah menjadi :
$config['base_url'] = 'http://localhost/rest_server/';

Langkah 2 : Membuat database dan tabel
Langkah selanjutnya adalah membuat sebuah database baru yang akan menjadi tempat kita menyimpan data. Silahkan buat sebuah database dengan nama starbhak dan buatlah sebuah tabel dengan nama mahasiswa dan jurusan dengan format seperti berikut :


Langkah 3: insert data
Untuk bisa menampilkan data, kita harus insert data atau tambah data terlebih dahulu di setiap tabel
1.      SQL Tabel Mahasiswa

Hasilnya :
2.      SQL Tabel Jurusan
Hasilnya :

Jika sudah sekarang saatnya melakukan konfigurasi untuk koneksi ke database, silahkan buka file database.php yang ada dalam folder application/config/database.php dan silahkan sesuaikan dengan settingan web server anda
Langkah selanjutnya adalah meload library database, library ini merupakan library utama yang menyimpan perintah untuk mengelola database. Silahkan buka file autoload.php yang ada pada folder application/config/autoload.php dan load librarynya seperti ini :

Langkah 4: Instalasi Library Codeigniter-Restserver
Sekarang kita masuk ke tahap instalasi library codeigniter-restsever dengan codeigniter :
1.      Silahkan  download library codeigniter-restserver
2.      Lalu silahkan extrack dan copy folder application ke dalam folder utama project kita
3.      Jika ada permintaan untuk mereplace file maka pilih yes saja.
4.      Jika sampai pada tahap ini anda berhasil maka akan muncul seperti dibawah ini :
Selanjutnya kita akan membuat sebuah controller dengan nama Mahasiswa.php yang merupakan resource dari web service yang akan menangani request pengelolaan data dari tabel mahasiswa, berikut ini script nya :

<?php

require APPPATH . '/libraries/REST_Controller.php';
require APPPATH . '/libraries/Format.php';
use Restserver\libraries\REST_Controller;

class mahasiswa extends REST_Controller {

    function __construct($config = 'rest') {
        parent::__construct($config);
    }

    // show data mahasiswa
    function index_get() {
        $nim = $this->get('nim');
        if ($nim == '') {
            $mahasiswa = $this->db->get('mahasiswa')->result();
        } else {
            $this->db->where('nim', $nim);
            $mahasiswa = $this->db->get('mahasiswa')->result();
        }
        $this->response($mahasiswa, 200);
    }

    // insert new data to mahasiswa
    function index_post() {
        $data = array(
                    'nim'           => $this->post('nim'),
                    'nama'          => $this->post('nama'),
                    'id_jurusan'    => $this->post('id_jurusan'),
                    'alamat'        => $this->post('alamat'));
        $insert = $this->db->insert('mahasiswa', $data);
        if ($insert) {
            $this->response($data, 200);
        } else {
            $this->response(array('status' => 'fail', 502));
        }
    }

    // update data mahasiswa
    function index_put() {
        $nim = $this->put('nim');
        $data = array(
                    'nim'       => $this->put('nim'),
                    'nama'      => $this->put('nama'),
                    'id_jurusan'=> $this->put('id_jurusan'),
                    'alamat'    => $this->put('alamat'));
        $this->db->where('nim', $nim);
        $update = $this->db->update('mahasiswa', $data);
        if ($update) {
            $this->response($data, 200);
        } else {
            $this->response(array('status' => 'fail', 502));
        }
    }

    // delete mahasiswa
    function index_delete() {
        $nim = $this->delete('nim');
        $this->db->where('nim', $nim);
        $delete = $this->db->delete('mahasiswa');
        if ($delete) {
            $this->response(array('status' => 'success'), 201);
        } else {
            $this->response(array('status' => 'fail', 502));
        }
    }

}

Langkah 5: Pengujian menggunakan Plugin Postman
Sebelum kita melakukan pengujian, kita install terlebih dahulu Plugin Postman. Pengujian pertama adalah melakukan request untuk menampilkan seluruh data mahasiswa dengan method GET
Sekarang saya akan melakukan percobaan menginsert data dosen melalui web service menggunakan method POST. Untuk bisa menginsert data maka saya harus mengisi parameter yang ada pada kolom x-www-form-urlencoded seperti dibawah ini :
Hasilnya data yang tadi saya input sudah  masuk dan berhasil ditampilkan ketika saya melakukan request dengan method GET.
Selanjutnya saya akan melakukan percobaan update data dengan method PUT, pada percobaan kali ini data yang akan saya ubah hanyalah field alamat nya saja, untuk melakukan perubahan jangan lupa menyertakan nim yang merupakan key dalam proses update data pada layer web service
Hasilnya data yang tadi saya update sudah  berubah dan berhasil ditampilkan ketika saya melakukan request dengan method GET.
Pengujian selanjutnya saya akan melakukan request untuk menghapus sebuah data dengan method DELETE, untuk bisa menghapus data saya wajib mengirim nim yang akan dihapus sebagai parameter yang akan digunakan di layer web service untuk melakukan penghapusan data.
Berikut ini adalah hasil respons setelah saya melakukan request penghapusan data dengan NIM TI102133
Hasilnya data yang tadi saya hapus sudah  terhapus dan berhasil ditampilkan ketika saya melakukan request dengan method GET.


Terima kasih atas kunjungannya. 
Maaf bila ada salah kata dalam postingan ini 
Wassalamu'alaikum Warahmatullahi Wabarakatuh

Tidak ada komentar:

Posting Komentar