Yuk Ikuti Cara Mudah Membuat Rest API Codeigniter!
Apakah kamu berniat untuk membuat Rest API? Jika iya berarti kamu sudah menemukan artikel yang tepat.
DomaiNesia akan mengajak kamu untuk membuat rest api codeigniter.
Sebelum memulai membahas cara membuat rest api dengan codeigniter, baiknya kamu mengetahui apa itu rest api. Nah untuk itu, kita bahas dulu yuk apa itu rest api.
Apa itu Rest API?
Apa itu Rest API? Rest API terdiri dari dua kata yaitu Rest dan API.
Rest atau Representational State Transfer adalah salah satu desain arsitektur API yang menggunakan protokol HTTP dalam melakukan komunikasi data.
Sedangkan API singkatan dari Application Programming Interface.
API adalah sebuah software yang menghubungkan dan mengintegrasikan dua aplikasi atau lebih yang berbeda secara bersamaan agar saling terhubung.
Tujuan dari API sendiri yaitu untuk memudahkan developer dalam melakukan integrasi dan mempercepat proses development dengan tidak membuat fungsi atau bahkan fitur yang sama berulang kali.
Rest API ini dapat dibangun dengan beberapa framework loh DomaiNesians! Salah satunya dengan Codeigniter. Lalu bagaimana cara kerja Rest API Codeigniter? Simak penjelasannya setelah ini ya!
Bagaimana Cara Kerja Rest API Codeigniter?
Setelah kamu mengetahui penjelasan singkat apa itu Rest API.
Jadi kali ini DomaiNesia akan mengajak kamu untuk membahas bagaimana sih cara kerja rest api codeigniter ini. Pada dasarnya Rest API terbagi menjadi dua yaitu Rest Server dan Rest Client.
Rest Client disini hanya melakukan request HTTP sesuai dengan kebutuhannya kepada server yang nantinya dibedakan berdasarkan pada Global ID atau URIs.
Lalu Rest Server akan menerima request dari client dan Rest Server akan merespon request tersebut dengan mengirimkan kembali HTTP request dengan data yang dikirimkan biasanya berbentuk JSON.
Jika dianalogikan Rest API sebagai daftar menu pada rumah makan, lalu REST Server adalah rumah makan, dan Rest Client adalah pengunjung rumah makan yang memesan makanan berdasarkan menu yang sudah disediakan. Bagaimana? Mudah kan dipahami?
Dalam melakukan request HTTP terdapat beberapa metode yang digunakan pada rest api codeigniter, seperti
- GET, digunakan untuk membaca resource pada server.
- POST, digunakan untuk membuat resource baru pada server.
- PUT, digunakan untuk mengubah atau mengedit bagian resource yang sudah ada pada server.
- DELETE, digunakan untuk menghapus bagian resource pada server.
Nah itu tadi cara kerja dari rest api codeigniter.
Dengan menggunakan rest api codeigniter kamu dapat berkomunikasi dengan berbagai aplikasi.
Misalnya kamu menggunakan React Js sebagai frontend website maka kamu dapat dengan mudah terhubung dengan Rest API yang menggunakan bahasa pemrograman PHP dengan memanfaatkan salah satu framework PHP yaitu Codeigniter.
Semakin penasaran bagaimana cara membuat rest api codeigniter?
Cara Membuat Rest API Codeigniter
Sebelum membuat Rest API dengan Codeigniter, ada beberapa hal nih yang harus kamu siapkan terlebih dahulu, meliputi :
- 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, merupakan kode editor yang nantinya akan digunakan untuk menulis dan menyusun kode.
- Postman, merupakan software yang berperan sebagai REST Client yang nantinya akan mengirimkan request. Postman ini dapat membantu dalam proses pembuatan dan pengembangan rest api codeigniter sebab kamu bisa melakukan testing menggunakan Postman.
Jika tiga itu sudah kamu siapkan, maka kamu sudah siap untuk membuat rest api codeigniter. Untuk itu simak 8 langkahnya disini!
1. Mengunduh dan Install Codeigniter 4
Untuk menginstall codeigniter ada 2 cara yang bisa kamu lakukan yaitu melalui website resmi atau install melalui composer. Apabila kamu ingin install codeigniter melalui website resmi, pertama- tama buka website resmi Codeigniter lalu klik “Download”.
Tapi sebelumnya kamu harus memastikan versi PHP yang terinstall pada komputer kamu harus diversi 7.2 atau ke atas. Jika belum maka lakukan update.
Jika sudah terunduh maka jangan lupa untuk melakukan ekstraksi pada file zip yang sudah terunduh.
Lalu ubah nama folder tersebut berdasarkan apa yang kamu inginkan lalu pindahkan pada pada folder htdocs pada direktori C:/xampp/htdocs dan instalasi selesai.
Sedangkan jika ingin melalui composer, silakan buka terminal dan masuk ke direktori C:/xampp/htdocs.
Kemudian jalankan perinta dibawah ini pada terminal.
1 |
composer create-project codeigniter4/appstarter ci_api |
Perintah tersebut akan menginstall codeigniter dengan nama ci_api dan kamu bisa mengubah sesuai kebutuhan. Jika sudah berhasil maka instalasi sudah selesai.
2. Mengaktifkan mode development
Proses instalasi sudah selesai dan kamu bisa membuka folder tersebut menggunakan Visual Studio Code yang sudah kamu siapkan.
Lalu cari file env dan jika sudah maka klik kanan dan rename file menjadi .env.
Lalu ubah kode “CI_ENVIRONMENT” menjadi “CI_ENVIRONMENT = development”.
Hal ini perlu kamu lakukan pada proses development agar jika terjadi error maka pesan error yang dimunculkan lebih detail sehingga memudahkan kamu dalam mengetahui letak errornya.
3. Membuat database menggunakan phpmyadmin
Langkah membuat rest api dengan codeigniter berikutnya yaitu pembuatan database menggunakan phpmyadmin.
Nah kamu bisa mengaksesnya dengan membuka halaman localhost/phpmyadmin.
Pada tutorial kali ini kita akan membuat database dengan nama ci_api. Jika sudah berhasil membuat database maka kamu bisa memasukkan query berikut ini pada tab SQL.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
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') |
Dengan query tersebut kamu bisa membuat tabel baru dengan nama produk yang terdiri dari 3 kolom yaitu id, nama_produk, dan harga.
Nama kolom ini bisa kamu sesuaikan ya! Nah untuk query “INSERT INTO” ini nantinya akan membuat 6 baris data sesuai dengan kolom yang sudah dibuat.
Jika sudah kamu copy dan paste maka jangan lupa untuk klik “Go”. Pesan sukses sudah tampil namun jangan lupa ya untuk memeriksa apakah tabel yang kamu buat dan data yang kamu masukkan sudah sesuai.
4. Menghubungkan dan mengkonfigurasi database
Dalam membuat rest api dengan codeigniter yang pasti kamu membutuhkan database untuk menyimpan datanya.
Nah sebelumnya kita sudah berhasil membuat database lengkap dengan kolom dan datanya.
Untuk itu langkah membuat rest api dengan codeigniter selanjutnya yaitu kamu harus menghubungkan codeigniter kamu dengan database tadi.
Caranya dengan masuk ke app/Config dan buka file Database.php. Disana kamu akan melihat baris yang berisi username, password, dan database. Perhatikan baik-baik ya, jadi buatlah perubahan seperti ini.
- username isi dengan root.
- password isi dengan ‘’.
- database isi dengan nama database tadi yaitu ci_api.
Jangan lupa untuk simpan perubahannya dengan tekan CTRL + S ya DomaiNesian! Nah sampai sini kamu sudah terhubung dengan database.
5. Membuat file model
Langkah membuat rest api dengan codeigniter yaitu membuat file model.
File model ini berfungsi untuk mengatur data dan mengakses tabel pada database.
Kamu harus membuat file ini pada direktori app/Models dan buat file baru dengan nama ProductModel.php. Lalu salin kode di bawah ini pada file tersebut.
1 2 3 4 5 6 7 8 9 10 |
<?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, maka langkah membuat rest api dengan codeigniter selanjutnya yaitu membuat file rest controller yang nantinya berfungsi untuk menambah, mengubah, menampilkan, dan menghapus data.
Nah untuk membuat file ini kamu harus masuk ke direktori app\Controllers dan buat file Product.php kemudian salin kode dibawah ini.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
<?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.'); } } } ?> |
Jika kamu perhatikan ada 5 method pada kode di atas.
- index() untuk menampilkan seluruh data pada database.
- create() untuk membuat atau menambahkan data baru pada database.
- show() untuk menampilkan data secara spesifik pada database.
- update() untuk mengubah data pada database.
- delete() untuk menghapus data pada database.
7. Membuat Rest API Route
Selanjutnya agar Rest API Codeigniter bisa diakses maka kamu harus mendefinisikan route nya terlebih dahulu.
Bagaimana caranya? Caranya dengan membuka file Routes.php pada direktori app/Config. Lalu cari kode ini.
1 |
$routes->get('/','Home::index' ); |
Jika sudah kamu temukan, maka tambahkan kode di bawah tepat di bawah kode tersebut.
1 |
$routes->resource('product'); |
Jika sudah kamu tambahkan berarti kamu bisa mengakses API pada URL http://localhost:8080/product.
Nah tapi kamu harus mengecek terlebih dahulu apakah route tersebut sudah berhasil ditambahkan atau belum. Masukkan kode ini php spark routes pada terminal.
8. Melakukan testing REST API dengan Postman
Langkah terakhir dalam membuat rest api dengan codeigniter yaitu melakukan testing.
Kamu bisa menggunakan Postman sebagai tools untuk melakukan tetsing Rest API. Di dalam Postman ada beberapa pilihan yang tersedia. Kamu bisa menggunakan sesuai fungsi atau skenario testing Rest API.
Menampilkan semua data
Pilih method GET dan masukkan URL ini pada box yang disediakan
http://localhost:8080/product
Lalu klik Send, jika terlihat sudah ada data yang kamu masukkan tadi, berarti pengujian method GET sudah berhasil.
Menampilkan data yang spesifik
Masih dengan method GET namun kali ini tambahkan id produk yang ingin ditampilkan dan URL nya berubah menjadi seperti ini.
http://localhost:8080/product/1
Lalu klik Send dan jika sudah berhasil ditampilkan data dengan id 1 saja berarti pengujian mu kali ini sudah berhasil.
Mengubah data
Jika mengubah data maka kamu menggunakan method PUT. Lalu masukkan URL dengan id produk yang ingin kamu ubah. Misalnya menggunakan id 2 berarti URL nya.
http://localhost:8080/product/2
Lalu klik tab Body dan pilih x-www-form-uriencoded lalu masukkan nama atribut pada kolom Key dan data baru pada kolom Value. Jangan lupa klik Send untuk mengirimkan data baru. Lalu coba gunakan method GET dan cek apakah data sudah berhasil berubah atau belum.
Menambahkan data
Gunakan method POST untuk menambahkan data baru lalu masukkan URL
http://localhost:8080/product
Pilih tab Body dan pilih x-www-form-uriencoded lalu masukkan seperti tadi. Jangan lupa klik Send juga ya! Lalu cek apakah data yang kamu tambahkan sudah berhasil masuk ke database atau belum dengan method GET.
Menghapus data
Pilih method DELETE dan masukkan URL beserta id produk yang ingin kamu hapus. Misalnya kamu ingin menghapus id 3 maka URLnya menjadi.
http://localhost:8080/product/3
Lalu jangan lupa klik Send dan cek kembali menggunakan method GET apakah sudah terhapus atau belum.
Bagaimana? Mudahkan Membuat Rest API Codeigniter?
Ternyata cukup mudah kan membuat Rest API Codeigniter!
Nah untuk itu kamu bisa mengikuti langkah-langkahnya mulai dari menginstall, membuat database, melakukan konfigurasi, hingga testing API yang sudah kamu buat.
Namun sayang API mu tadi masih berada pada lokal komputer kamu saja dan belum bisa diakses siapapun selain kamu sendiri menggunakan komputermu.
Maka dari itu kamu harus mempublish agar rest api codeigniter milikmu bisa digunakan banyak orang dengan mengupload menggunakan hosting.
Pilihan hosting Mega dari DomaiNesia nampaknya cukup sesuai dengan kebutuhanmu.
Dengan layanan website dan email unlimited serta kapasitas penyimpanan yang cukup longgar.
Yuk gunakan hosting dari DomaiNesia untuk meningkatkan pengalaman berinternet yang berkualitas dengan harga terjangkau. Tunggu apa lagi?
artikelnya menarik, terima kasihh miin