Membuat API sederhana menggunakan Node.js
Seperti yang sudah dibahas pada tutorial sebelumnya tentang cara Menambahkan Project App Node.JS Di HPCH dan sedikit penjelasan mengenai Apa itu Node.js, kali ini akan dibahas tutorial bagaimana cara membuat API sederhana menggunakan Node.js, simak selengkapnya:
Step 1 – Buka Aplikasi Node.js
Tekan tombol yang berlogo “pencil” untuk edit aplikasi
Step 2 – Tambahkan ROOTPATH pada bagian Environment variables
Tekan tombol “ADD VARIABLE” lalu masukan Name: ROOTPATH dan Value: /testapi
Value ini harus sama dengan Application URL yang Anda masukan, fungsinya sebagai path yang akan digunakan untuk endpoint API.
Note: Jika Application URL tidak diisi, maka tidak perlu menambahkan ROOTPATH pada Environtment Variable
Step 3 – Setting Package.json
Buat file baru dan beri nama package.json lalu isi seperti contoh diatas.
Package.json ini digunakan untuk menyisipkan atau memasang “dependencies” dan inisialisasi untuk kebutuhan aplikasi nodejs Anda.
Kali ini hanya butuh “express” saja yang akan dipasangkan ke aplikasi Anda.
Lihat: https://expressjs.com/en/starter/hello-world.html
Sudah kenal HPCH? Paket High Performance Cloud Hosting dengan penyimpanan Ultrafast SSD. Dilengkapi dengan Node.js, Git Version Control, dan Cloud Performance AddOn hingga +12CPA. Mulai 75ribu/bln.
Step 4 – Edit startup file
Statrtup file ini digunakan pertama kali Anda mengakses URL dari aplikasi Node.js, dalam kasus ini startup file yang dibuat adalah server.js
Bukan dan edit file server.js seperti contoh diatas.
Step 5 – Membuat Routes
Routes digunakan endpoint setiap API yang akan diakses.
Pertama, buat folder bernama “routes” didalam application root Anda, lalu didalam folder routes buat file baru dengan nama index.js
Lihat: https://expressjs.com/en/guide/routing.html
Isi index.js seperti contoh diatas.
Didalamnya kita import controller sebagai tempat menyimpan fungsi untuk menangani request dan response
Step 6 – Membuat Controller
Contorller ini digunakan untuk menyimpan fungsi yang menangani request dan response dari routes yang sudah kita buat diatas.
Buat folder bernama “controllers” didalam application root Anda, lalu didalam folder controllers buat sebuah file dengan nama “userController.js”, isikan seperti contoh dibawah.
Step 7 – Test Endpoint
Setelah semua selesai, lalu kita akan test endpoint yang sudah dibuat menggunakan Postman, dengan URL http://labs3-nodejs.harapmaklum.com/testapi/user
Download Postman: https://www.getpostman.com/apps
Pertama , kita akan test dengan method GET
Lalu kita akan test dengan method POST
Pada test method POST ini kita memunculkan request body.
Response akan berupa json format.
Step 8 – Menambahkan Middleware
Menambahkan middleware agar digunakan untuk pesan dari kesalahan lebih interaktif.
Secara default jika kita mengkases endpoint yang tidak kita daftarkan pada route akan muncul seperti berikut, misalkan mengakses http://labs3-nodejs.harapmaklum.com/testapi/coba
Cannot GET /testapi/coba
Agar lebih interaktif mari kita tambahkan pada server.js seperti berikut.
Troubleshoot
- Jika Anda tidak melihat perubahan setelah mengubah file atau script, Anda harus merestart aplikasi, seperti berikut:
- Jika response tidak muncul, lakukan restart aplikasi atau stop lalu start lagi.
- Jika response tidak muncul pada method POST, Anda harus memasukan baris berikut kedalam file server.js terlebih dahulu
// add the line below
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
Lihat: https://github.com/expressjs/body-parser#examples