Belajar Membuat REST API Sederhana dengan Node.js, Express.js dan MongoDB

Yudi Setiawan 20 September 2016

Belajar Membuat REST API Sederhana dengan Node.js, Express.js dan MongoDB

Pada tutorial ini, saya akan sedikit membahas tentang proses pembuatan backend REST API sederhana menggunakan NodeJs, ExpressJs dan MongoDB. REST merupakan salah satu jenis web service yang ada selain, XML RPC dan SOAP. Untuk XML RPC saya pernah mencobanya di Java dan penggunaannya cukup gampang dilakukan. Di tutorial berikutnya, saya akan jelaskan bagaimana prakteknya XML RPC pada Java. REST merupakan singkatan dari Representational State Transfer yang mana ini merupakan standar pada web yang melewati protokol HTTP untuk melakukan pertukaran data antar perangkat. Adapun beberapa method yang bisa digunakan pada REST ialah sebagai berikut:

  1. GET
  2. POST
  3. DELETE
  4. PUT
Pada tutorial ini, yang saya pakai hanya GET untuk mengambil data dari server, POST untuk menyimpan data baru dan mengubah data di server dan DELETE saya gunakan untuk menghapus data pada server.

 

Peralatan yang digunakan

  1. IDE IntelliJ yang sudah ditambah plugin NodeJs merupakan IDE yang saya gunakan pada tutorial ini.
  2. MongoDD merupakan database open source yang bersifat NoSQL.
 

Buat Projek Baru

Sebelum kita memulai coding di NodeJs silakan Anda buka terlebih dahulu IDE IntelliJ dengan cara pilih Create New Project. 1

Kemudian pilih Node.js Express App dan Next.

2
Kemudian isi Project Name dan field lainnya sesuai kondisi Anda. Setelah itu pilih Finish. 3

 

Persiapan Sebelum Menulis Coding

Setelah Anda berhasil membuat projek baru di IntelliJ maka, Anda sudah dapat melihat struktur projek baru Anda kira - kira seperti pada gambar berikut.
7

Pada gambar diatas, ada 2 direktori baru yang harus Anda buat yaitu, config dan model. Setelah itu buka file package.json dan tambahkan dependency mongoose seperti berikut.

8

Bagi Anda yang belum tahu apa itu dependency maka, akan saya jelaskan sedikit bahwa dependency ini hampir sama seperti Maven pada Java yang mana fungsinya ialah untuk menambahkan library eksternal dari internet. Setelah itu, lakukan proses instalasi npm agar dependency yang sudah kita tambahkan tadi bisa masuk ke projek yang Anda buat. Caranya, buka tab Terminal pada tab bagian bawah IntelliJ.

9

Dan kemudian, ketikkan perintah "npm install"(tanpa tanda kutip) pada terminal dan tunggu beberapa saat sampai proses instalasi npm nya selesai(Catatan: untuk menjalankan perintah tersebut Anda memerlukan koneksi internet).

Membuat Database

Saya anggap pada tutorial ini Anda sudah berhasil melakukan instalasi MongoDB di perangkat Anda. Bagi Anda yang belum melakukan proses instalasi MongoDB silakan diunduh di sini. Sebelum Anda membuka terminal mongodb pastikan terlebih dahulu bahwa mongodb Anda sudah berjalan dengan baik. Caranya, buka aplikasi Command Prompt pada Windows dan masuk ke direktori instalasi mongodb. Apabila, Anda meng-install mongodb nya di direktori C:\Program Files\mongodb maka, ketikkan perintah berikut.

cd C:\Program Files\MongoDB\Server\3.2\bin

Setelah itu, ketik lagi perintah berikut untuk menjalankan servis mongodb nya.

mongod

Dan apabila tidak muncul tulisan error berarti, Anda telah berhasil menjalankan servis mongodb nya. Selanjutnya, buka terminal mongodb nya caranya, buka aplikasi Command Prompt baru dan masuk ke direktori mongodb seperti pada langkah diatas dan setelah itu ketikkan perintah

mongo

kemudian, buat database baru di mongodb dengan nama "university". Perintahnya ialah

use university;

Setelah itu, buat collection baru dengan nama "students". Sedikit catatan, pada pemberian nama collection di mongodb perlu ditambah huruf "s" pada akhir nama collection. Mengapa??? silakan Anda baca di sini. Cara membuat collection pada mongodb ialah dengan cara mengetikkan perintah berikut.

db.createCollection("students");

 

Membuat Model

Untuk langkah awal sebelum coding, silakan Anda buat file javascript di direktori model dan beri nama student. 10

Setelah itu, ketikkan source code berikut ke dalam file student.js.

Berikut sedikit penjelasan mengenai source code diatas.

  • var monggose = require("mongoose") berfungsi untuk melakukan import library mongoose.
  • var Schema = mongoose.Schema() berfungsi untuk membuat Schema dari si mongoose.
  • var studentSchema = new Schema . . . berfungsi untuk membuat struktur dari collection yang sudah kita buat di awal.
  • var student = mongoose.model("students", studentSchema) berfungsi untuk menghubungkan collection di mongodb dengan model studentSchema.

Berikut gambar source code diatas.

11

 

Membuat Konfigurasi Database

Buat file javascript baru dengan nama database dan letakkan di direktori config seperti pada gambar berikut.

12

File ini berisi url dari database mongodb dan berikut source code nya.

 

Membuat File Router

Buat file javascript baru dengan nama students pada direktori routes.
13

Dan ketikkan source code berikut.

 

Konfigurasi File app.js

Langkah berikutnya ialah melakukan konfigurasi pada file app.js yang mana file ini merupakan file utama pada projek. Pada file ini, Anda hanya perlu melakukan import file students yang sudah Anda buat tadi dan mensetup agar bisa diakses oleh aplikasi dan setting port yang akan digunakan oleh server. Berikut source code yang perlu Anda tambahkan.

Jadi, setelah Anda tambahkan source code diatas maka, source code lengkapnya dari file app.js ialah sebagai berikut.

 

Testing

Untuk testing, pada kali ini saya menggunakan aplikasi postman. Dan berikut ialah hasil testingnya.

Tambah Data Mahasiswa Baru

14

 

15

Ubah Data Mahasiswa

16

17

Hapus Data Mahasiswa

18

19