Varrel Dwitantio Purwadiansyah
API adalah mekanisme yang memungkinkan 2 komponen perangkat lunak dapat berkomunasi satu sama lain. API sendiri merupakan singkatan dari Application Programming Interface. Salah satu API yang populer dan fleksibel yaitu REST APIs. REST adalah singkatan dari Representational State Transfer. REST mendefinisikan serangkaian fungsi seperti GET, PUT, DELETE, dll. yang dapat digunakan klien untuk mengakses data server. Klien dan server bertukar data menggunakan HTTP.
API adalah mekanisme yang memungkinkan 2 komponen perangkat lunak dapat berkomunasi satu sama lain. API sendiri merupakan singkatan dari Application Programming Interface. Salah satu API yang populer dan fleksibel yaitu REST APIs. REST adalah singkatan dari Representational State Transfer. REST mendefinisikan serangkaian fungsi seperti GET, PUT, DELETE, dll. yang dapat digunakan klien untuk mengakses data server. Klien dan server bertukar data menggunakan HTTP.
Pertama kita buka cmd, lalu ketikan perintah dibawah untuk membuat folder baru dengan nama rest-api-nodejs. Kemudian kita buka folder tersebut dengan mengetikan cd nama_folder di cmd.
mkdir rest-api-nodejs && cd rest-api-nodejs
Setelah kita berada di folder yang telah kita buat, lalu kita perlu menjalankan perintah di bawah ini di cmd untuk menginisialisasi project kita. Jika sudah di dalam folder tersebut akan terdapat package.json
npm init -y
Selanjutnya kita perlu menginstall 2 package yaitu express dan mysql untuk membuat API dengan Node JS.
npm install express mysql
Setelah proses instalasi package, kemudian kita akan membuat file baru dengan nama index.js. Pada file tersebut kita perlu memanggil 2 package yang sebelumnya kita install yaitu express dan mysql.
Pertama kita perlu menginisialisasi express dan mengatur port untuk menjalankan aplikasi Node JS kita.
Kita perlu membuat database dengan nama db_bookstore terlebih dahulu. Selanjutnya kita jalankan query berikut pada database yang barusan dibuat untuk membuat table buku.
CREATE TABLE `buku` (
`kode_buku` bigint(20) NOT NULL,
`judul` varchar(255) NOT NULL,
`penulis` varchar(255) NOT NULL,
`harga` bigint(20) NOT NULL,
PRIMARY KEY (`kode_buku`)
)
Setelah itu, kita buat koneksi ke databse mysql dan sesuaikan nama host, user, password, dan database yang telah kita buat barusan.
Disini kita buat middleware yang digunakan untuk parse data dalam request body dalam format JSON. Selain itu, kita buat route dengan method get untuk homepage yang akan menampilkan pesan “Homepage Backend Toko Buku”.
Kemudian, kita buat route dengan method post pada url ‘/insert_data_buku’ untuk memasukkan data buku baru ke dalam database.
Selanjutnya, kita buat route dengan method get pada url ‘/get_data_buku’ untuk melihat semua buku yang ada di dalam database. Selain itu, kita juga bisa melihat 1 buku saja dengan menambahkan paramater kode_buku di dalam url. Seperti berikut ‘/get_data_buku?kode_buku=12345’.
Kita juga akan buat route dengan method put pada url ‘/update_data_buku’ untuk mengubah buku yang ada di dalam database. Selain itu, kita perlu mengirimkan paramater kode_buku di dalam url. Seperti berikut ‘/update_data_buku/12345’.
Kita juga akan buat route dengan method delete pada url ‘/delete_data_buku’ untuk menghapus buku yang ada di dalam database. Selain itu, kita perlu mengirimkan paramater kode_buku di dalam url. Seperti berikut ‘/delete_data_buku/12345’.
Terakhir kita bisa menjalankan server dengan menggunakan method listen().