NodeJS dan MongoDB : Membuat CRUD API Sederhana

Di tutorial ini, saya akan membagikan cara membuat Aplikasi To Do menggunakan Rest API NodeJS. Untuk databasenya, kita akan menggunakan MongoDB. Kita juga akan menggunakan mongoose, sebuah library javascript untuk memudahkan kita bekerja dengan MongoDB.

Install MongoDB

  1. Buka https://www.mongodb.com/ dan pilih Product – Software – MongoDB Server kemudian download file berdasarkan sistem operasi yang digunakan.
  2. Pindahkan file tersebut ke direktori user, ekstrak file yang baru di download, ubah nama folder menjadi ‘mongo’ , dan di direktori yang sama, buat folder baru ‘mongo-data’.
  3. Buka terminal, masuk ke folder mongo/bin dan aktifkan mongodb dengan perintah berikut: ./mongod –dbpath ~/mongo-data/
  4. Buka tab baru dan masukkan perintah :  ./mongo 
  5. Cobalah untuk memasukkan sebuah perintah, misalnya : > db.Todos.insert({text:’Create Node Tutorial’})
  6. Tarik data dengan perintah ini misalnya : > db.Todos.find(). Kita akan mendapatkan object yang baru kita buat.
  7. Ketik Ctrl + C untuk mengakhiri sesi.

Menginstall Robo 3T (Robomongo)

  1. Download installernya dari https://robomongo.org/
  2. Download Robo 3T dan ekstrak file nya.
  3. Connect ke local database :
    Robomongo
  4. Todo collection yang tadi kita buat akan muncul. Robomongo 2

Collection pada NoSQL itu mirip dengan tabel pada SQL. Baris dan Record pada SQL disebut Document di NoSQL. Kolom pada SQL kita sebut Field di NoSQL.

Menghubungkan Aplikasi Node dengan Database MongoDB

  1. Pada direktori kerja anda, buat folder baru ‘node-todo-api’.
  2. Masuk ke dalam direktori tersebut dan inisialisasi aplikasi node dengan perintah: > npm init. Tekan enter untuk menggunakan setting default.
  3. Install mongodb : npm install [email protected] –save
  4. Buat folder ‘testing’ untuk melakukan coba-coba.Buat file mongodb-connect.js. Ketik node testing/mongodb-connect.js
  5. Buka Robo3T, data yang kita buat akan muncul : MongoDB Collection\

Mongoose ORM

Mongoose mempermudah kita dalam melakukan struktur data. Kita dapat melakukan validasi pada data menggunakan mongoose.

1. Install Mongoose

2. Buat server.js

Buat folder baru ‘server’ dan file ‘server.js’ di dalam direktori tersebut.

3. Jalankan file

Gunakan perintah :

Todo App

Menggunakan Postman

1. Buka getpostman.com

Download postman yang akan kita gunakan untuk tools api https://getpostman.com kemudian install.

2. Buka postman dan silahkan dicoba-coba

postman

Menambahkan Route POST /todos

1. Install express dan body-parser

Kita akan menginstall dua buah tools untuk bekerja dengan api. Tools tersebut adalah express dan body-parser. Buka terminal, masuk ke direktori kerja dan ketik :

2. Refactor server.js

Kita akan memodifikasi server.js untuk merapihkan kode. Pertama-tama, buat folder ‘db’ di dalam folder server, dan buat mongoose.js di dalam folder db.

mongoose.js

Selanjutnya di dalam folder server buat folder baru bernama ‘models’ dan buat dua file di dalamnya, todos.js dan user.js

todos.js

user.js

Sekarang, modifikasi server.js :

server.js

3. Membuat Todo dengan Postman

Jalankan server dengan perintah node server/server.js di dalam direktori kerja. Jangan lupa menjalankan mongodb server (masuk ke folder mongo/bin folder dan aktifkan dengan perintah : ./mongod –dbpath ~/mongo-data/).

Buka Postman dan ketikkan endpoint : localhost:3000/todos. Buka tab Body, pilih raw dan pilih JSON(application/json) dari menu dropdown dropdown. Coba untuk memasukkan satu record baru:

Postman to do nodejs api

Kita akan mendapatkan todo baru di dalam database.

A new POST todos endpoint

Route GET /todos

Route berikutnya digunakan untuk mengambil semua todo yang berada di dalam database.

1. Modifikasi server.js untuk menambahkan route GET :

2. Buka Postman dan coba untuk tarik data menggunakan GET

GET-todos-route-nodejs

Mengambil satu todo menggunakan route GET /todos

1. Modifikasi server.js dengan menambahkan route berikut:

2. Buka Postman dan coba untuk ambil data menggunakan GET

GET-individual-todo

Menghapus dokumen menggunakan route DELETE /todos/:id

1. Modifikasi server.js dengan menambahkan route DELETE:

2. Buka Postman dan cobalah untuk menghapus sebuah todo

delete-to-do-

Update data menggunakan route PUT /todos/:id

1. Install lodash

Kita akan menggunakan method “pick” dari lodash, sehingga kita perlu menginstallnya terlebih dahulu :

2. Update server.js dengan menambahkan route PUT

3. Buka postman dan coba untuk mengupdate satu todo

put-to-do-update

2 thoughts on “NodeJS dan MongoDB : Membuat CRUD API Sederhana

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.