Begini Cara Mudah Membuat Rest API Codeigniter!
Apakah Anda berencana membuat Rest API? Jika ya, Anda telah menemukan artikel yang tepat. Hosteko akan mengajakmu untuk membangun Codeigniter Rest API.
Sebelum menjelaskan cara membuat Rest API menggunakan Codeigniter, kita perlu memahami apa itu Rest API. Pertama, mari kita jelaskan apa itu Rest API.
Apa itu Rest API?
Apa itu Rest API? Rest API terdiri dari dua kata, yaitu Rest dan API. Rest atau Representation State Transfer merupakan desain arsitektur API yang menggunakan protokol HTTP untuk melakukan komunikasi data.
Sedangkan API adalah singkatan dari Application Programming Interface. API adalah perangkat lunak yang menghubungkan dan mengintegrasikan dua atau lebih aplikasi berbeda satu sama lain. Tujuan dari API sendiri adalah untuk memudahkan integrasi bagi developer dan mempercepat proses development dengan tidak menulis fungsi dan fitur yang sama berulang kali.
Rest API ini bisa dibangun dengan banyak framework loh! Salah satunya adalah Codeigniter. Jadi, bagaimana cara kerja Codeigniter Rest API? Simak penjelasannya di bawah ini!
Bagaimana Cara Kerja Rest API Codeigniter?
Setelah mempelajari penjelasan singkat tentang Rest API. Kali ini Hosteko mengajak Anda untuk membahas cara kerja Rest API Codeigniter. Pada dasarnya, Rest API dibagi menjadi dua bagian, yaitu Rest server dan Rest Client.
Rest Client tinggal mengirimkan permintaan HTTP ke server sesuai dengan kebutuhannya, yang kemudian dibedakan menggunakan Global ID atau URIs. Kemudian Rest Server menerima request dari client dan Rest Server meresponsnya dengan mengirimkan kembali permintaan HTTP yang berisi data, biasanya dikirim dalam format JSON.
Jika kita membandingkan Rest API dengan daftar menu restoran, maka Rest Server adalah restorannya dan Rest client adalah pengunjung restoran yang memesan makanan berdasarkan menu yang disediakan. Bagaimana? Mudah dimengerti, bukan?
Codeigniter Rest API menggunakan beberapa metode saat mengirim permintaan HTTP, termasuk:
- GET, digunakan untuk membaca resource yang ada di server.
- POST, digunakan untuk membuat resource baru di server.
- PUT, digunakan untuk mengubah atau mengedit beberapa resource yang sudah ada di server.
- DELETE, digunakan untuk menghapus bagian resource di server.
Nah itulah cara kerja Codeigniter Rest API. Anda dapat menggunakan Codeigniter Rest API untuk berkomunikasi dengan berbagai aplikasi.
Misalnya, jika Anda menggunakan React Js sebagai frontend untuk website Anda, Anda dapat dengan mudah terhubung ke Rest API menggunakan salah satu framework PHP yaitu Codeigniter yang menggunakan bahasa pemrograman PHP.
Tertarik mempelajari cara membuat Codeigniter Rest API?
Cara Membuat Rest API Codeigniter
Sebelum Anda membuat Rest API menggunakan Codeigniter, Anda harus mempersiapkan beberapa hal terlebih dahulu, antara lain:
- XAMPP, merupakan web server yang terdiri dari berbagai bagian dan fungsi yang mendukung kamu untuk melakukan pengembangan website pada local environment. Jadi dalam membuat rest api codeigniter kamu membutuhkan tools satu ini.
- Visual Studio Code, adalah editor kode yang nantinya digunakan untuk menulis dan mengkompilasi kode.
- Postman, adalah perangkat lunak yang bertindak sebagai REST Client dan kemudian mengirimkan permintaan. Postman membantu Anda membuat dan mengembangkan Codeigniter Rest API dengan memungkinkan Anda menjalankan pengujian.
Dengan tiga hal ini, Anda dapat membuat Codeigniter Rest API. Untuk itu simak 8 langkahnya disini!
1. Mengunduh dan Install Codeigniter 4
Ada dua cara untuk menginstall CodeIgniter, yaitu dari situs resminya dan dari Composer. Jika Anda ingin menginstal Codeigniter dari situs resminya, buka terlebih dahulu situs resmi Codeigniter dan klik “Download”.
Namun, pertama-tama Anda perlu memastikan bahwa versi PHP yang diinstal di komputer Anda adalah versi 7.2 atau lebih baru.Jika tidak, harap perbarui. Setelah diunduh, jangan lupa untuk mengekstrak file ZIP yang diunduh. Selanjutnya, ganti nama folder sesuai keinginan dan pindahkan ke folder htdocs di direktori C: /xampp/htdocs Instalasi sudah selesai.
Jika Anda ingin menggunakan Composer untuk sementara, buka terminal dan navigasikan ke direktori C: /xampp/htdocs. Kemudian jalankan perintah berikut di terminal:
composer create-project codeigniter4/appstarter ci_api
Perintah ini menginstal Codeigniter bernama ci_api. Anda dapat mengubahnya sesuai kebutuhan Anda. Jika berhasil maka instalasi selesai.
2. Aktifkan Development Mode
Proses instalasi selesai dan Anda dapat membuka folder berisi Visual Studio Code yang telah Anda siapkan. Kemudian cari file env dan jika ada, klik kanan dan ganti nama file menjadi .env. Kemudian ubah kode “CI_ENVIRONMENT” menjadi “CI_ENVIRONMENT = development”.
Anda perlu melakukan ini selama proses pengembangan. Dengan begitu, ketika terjadi kesalahan, pesan kesalahan yang Anda lihat akan lebih detail dan lebih mudah menemukan kesalahannya.
3. Membuat Database Menggunakan phpmyadmin
Langkah selanjutnya dalam membuat Rest API menggunakan Codeigniter adalah membuat database menggunakan phpmyadmin. Sehingga Anda dapat membuka dan mengakses halaman localhost/phpmyadmin.
Tutorial ini membuat database bernama ci_api. Setelah database berhasil dibuat, Anda dapat memasukkan query berikut di tab SQL.
CREATE TABLE produk (
id int(11) NOT NULL AUTO_INCREMENT COMMENT 'Primary Key',
nama_produk varchar(100) NOT NULL COMMENT 'Nama Produk',
harga varchar(255) NOT NULL COMMENT 'Harga',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='datatable produk table' AUTO_INCREMENT=1;
INSERT INTO `produk` (`id`, `nama_produk`, `harga`) VALUES
(1, 'Paris Premium', '40000'),
(2, 'Jeans High Waist', '150000'),
(3, 'Blouse Wanita', '150000'),
(4, 'Inner', '10000'),
(5, 'Kemeja Pria', '150000'),
(6, 'Hoodie', '175000')
Query ini memungkinkan Anda membuat tabel nama produk baru dengan tiga kolom yaitu ID, nama_produk, dan harga. Nama kolom ini dapat disesuaikan. Di sini, query “INSERT INTO” membuat 6 baris data sesuai dengan kolom yang dibuat.
Setelah copy paste, jangan lupa klik “Go”. Pesan sukses ditampilkan. Namun jangan lupa untuk memeriksa apakah tabel yang Anda buat dan data yang Anda masukkan sudah benar.
4. Koneksi dan Konfigurasi Database
Saat membangun Rest API dengan Codeigniter, Anda selalu memerlukan database untuk menyimpan data. Sejauh ini kita sudah bisa membuat database dengan kolom dan data. Inilah mengapa langkah selanjutnya dalam membuat Rest API menggunakan Codeigniter adalah menghubungkan Codeigniter ke database.
Untuk melakukannya, buka app/Config dan buka file Database.php. Di sana Anda akan melihat baris yang berisi username, password, dan database. Harap perhatikan dengan baik-baik, dan silakan ubah seperti ini.
- username isi dengan root.
- password isi dengan ‘’.
- database isi dengan nama database tadi yaitu ci_api.
Oh ya teman-teman, jangan lupa tekan CTRL + S untuk menyimpan perubahan Anda. Nah, pada titik ini Anda sudah terhubung ke database.
5. Membuat File Model
Langkah membuat Rest API menggunakan Codeigniter adalah membuat file model. File model ini digunakan untuk mengatur data dan mengakses tabel dalam database.
Anda perlu membuat file ini di direktori app/Models Anda dan membuat file baru bernama ProductModel.php. Kemudian salin kode berikut ke dalam file.
<?php namespace App\Models; use CodeIgniter\Model; class ProductModel extends Model { protected $table = 'produk'; protected $primaryKey = 'id'; protected $allowedFields = ['nama_produk', 'harga']; } ?>
6. Membuat File Rest Controller
Setelah membuat model, langkah selanjutnya dalam membuat Rest API menggunakan Codeigniter adalah membuat file Rest Controller yang nantinya dapat digunakan untuk menambah, mengubah, menampilkan, dan menghapus data.
Jadi, untuk membuat file ini, Anda perlu masuk ke direktori app\Controllers, buat file Product.php, dan salin kode berikut.
<?php
namespace App\Controllers;
use CodeIgniter\RESTful\ResourceController;
use CodeIgniter\API\ResponseTrait;
use App\Models\ProductModel;
class Product extends ResourceController
{
use ResponseTrait;
// all users
public function index()
{
$model = new ProductModel();
$data['produk'] = $model->orderBy('id', 'DESC')->findAll();
return $this->respond($data);
}
// create
public function create()
{
$model = new ProductModel();
$data = [
'nama_produk' => $this->request->getVar('nama_produk'),
'harga' => $this->request->getVar('harga'),
];
$model->insert($data);
$response = [
'status' => 201,
'error' => null,
'messages' => [
'success' => 'Data produk berhasil ditambahkan.'
]
];
return $this->respondCreated($response);
}
// single user
public function show($id = null)
{
$model = new ProductModel();
$data = $model->where('id', $id)->first();
if ($data) {
return $this->respond($data);
} else {
return $this->failNotFound('Data tidak ditemukan.');
}
}
// update
public function update($id = null)
{
$model = new ProductModel();
$id = $this->request->getVar('id');
$data = [
'nama_produk' => $this->request->getVar('nama_produk'),
'harga' => $this->request->getVar('harga'),
];
$model->update($id, $data);
$response = [
'status' => 200,
'error' => null,
'messages' => [
'success' => 'Data produk berhasil diubah.'
]
];
return $this->respond($response);
}
// delete
public function delete($id = null)
{
$model = new ProductModel();
$data = $model->where('id', $id)->delete($id);
if ($data) {
$model->delete($id);
$response = [
'status' => 200,
'error' => null,
'messages' => [
'success' => 'Data produk berhasil dihapus.'
]
];
return $this->respondDeleted($response);
} else {
return $this->failNotFound('Data tidak ditemukan.');
}
}
}
?>
Anda dapat memperhatikan bahwa kode di atas berisi lima metode.
- index() untuk menampilkan semua data dalam database.
- create() membuat atau menambahkan data baru ke database.
- show() menampilkan data tertentu dalam database.
- update() untuk mengubah data dalam database.
- delete() menghapus data dalam database.
7. Membuat Rest API Route
Selanjutnya, untuk dapat mengakses Codeigniter Rest API, kita perlu mendefinisikan rute terlebih dahulu. Bagaimana caranya?
Untuk melakukan ini, buka file Routes.php yang terletak di direktori app/Config Anda. Kemudian cari kode ini.
$routes->get('/','Home::index' );
Setelah ketemu, tambahkan kode berikut tepat di bawah kode tersebut.
$routes->resource('product');
Jika Anda menambahkan ini, berarti Anda dapat mengakses API dengan URL http://localhost: 8080/product.
Ya, tapi pertama-tama Anda perlu memeriksa apakah rute berhasil ditambahkan. Ketik kode ini php spark routes ke terminal.
8. Menguji Testing REST API dengan Postman
Langkah terakhir dalam membangun REST API dengan Codeigniter adalah testing. Anda dapat menggunakan Postman sebagai alat untuk menguji Rest API Anda. Beberapa opsi tersedia dalam Postman. Anda dapat menggunakannya sesuai dengan fungsi Rest API dan skenario pengujian.
Tampilkan semua data
Pilih metode GET dan masukkan URL ini di kolom yang tersedia.
http://localhost:8080/product
Lalu klik Send. Jika Anda melihat data yang Anda masukkan sebelumnya, itu adalah pengujian metode GET berhasil diselesaikan.
Data spesifik akan ditampilkan
Kita masih menggunakan metode GET, namun kali ini kita akan menambahkan ID produk yang ingin kita tampilkan, dan URL akan berubah menjadi:
http://localhost:8080/product/1
Lalu klik Send. Jika data dengan ID 1 berhasil berarti pengujian kali ini berhasil.
Memodifikasi Data
Jika ingin memodifikasi data, gunakan metode PUT. Kemudian masukkan URL berisi ID produk yang ingin Anda ubah. Misalnya menggunakan ID 2 berarti URLnya ialah.
http://localhost:8080/product/2
Selanjutnya klik tab Body, pilih x-www-form-uriencoded, lalu masukkan nama atribut pada kolom Key dan masukkan data baru pada kolom Value. Jangan lupa klik Send untuk mengirimkan data baru. Selanjutnya, jalankan metode GET untuk memeriksa apakah data berhasil diubah.
Menambahkan data
Menambah data baru dengan metode POST dan masukkan URL
http://localhost:8080/product .
Pilih tab Body, pilih x-www-form-uriencoded, dan masukkan seperti sebelumnya. Jangan lupa klik “Send“! Selanjutnya gunakan metode GET untuk mengecek apakah data yang Anda tambahkan berhasil masuk ke database.
Penghapusan data
Pilih metode DELETE dan masukkan URL dan ID produk yang ingin Anda hapus. Misalnya, jika Anda ingin menghapus ID 3, URL-nya adalah:
http://localhost:8080/product/3
Lalu klik Send dan jangan lupa cek kembali menggunakan metode GET apakah sudah terhapus.
Bagaimana? Mudahkan Membuat Rest API Codeigniter?
Kami mendapati bahwa membuat Codeigniter Rest API itu mudah. Untuk melakukannya, Anda dapat mengikuti langkah-langkah mulai dari instalasi hingga membuat database, mengonfigurasinya, dan menguji API yang Anda buat.
Sayangnya, API masih ada di komputer lokal Anda dan hanya dapat diakses dari komputer Anda. Oleh karena itu, kita perlu mempublikasikan Codeigniter Rest API dan menguploadnya melalui hosting agar banyak orang dapat menggunakannya.