Bagaimana membangun REST API untuk melakukan operasi CRUD dengan Node.js, Express dan MongoDB dengan contoh

Yogi Rezaldi
Bagaimana membangun REST API untuk melakukan operasi CRUD dengan Node.js, Express dan MongoDB dengan contoh


Anda pasti pernah mendengar tentang CRUD (Create, Retrieve, Update and Delete). Dalam tutorial di bawah ini, kita akan membangun REST API dengan Node.js, Express dan MongoDB untuk melakukan operasi CRUD. Untuk berinteraksi dengan instance MongoDB kita akan menggunakan Mongoose.

• Express - framework paling populer untuk Node.js dibangun dengan modul http Node.js di bawahnya. Ini menambahkan dukungan untuk perutean, middleware, sistem tampilan, dan banyak lagi. Express cukup sederhana dan mudah digunakan, tidak seperti kerangka kerja lain yang mengurangi fleksibilitas untuk memiliki pilihan desain dengan mencoba melakukan terlalu banyak dari yang diharapkan.

• Mongoose - alat Pemetaan Dokumen Objek (ODM) untuk Node.js dan MongoDB. Ini membantu Anda untuk mengkonversi dokumen dalam database ke objek dalam kode Anda dan sebaliknya.

Ada sedikit rekomendasi, jika Anda belum menginstal MongoDB sampai sekarang, silakan instal sebelum melanjutkan lebih jauh dan mulai juga Mongo.

Dalam tutorial Node.js ini, Kami akan membuat aplikasi untuk menyimpan kategori. Kami akan membangun API untuk membuat, mendaftar, mengedit, dan menghapus kategori dari database. 
Pertama kita akan membangun server web sederhana dan kemudian mengkonfigurasi database. Kemudian, kita akan membangun model kategori dan akhirnya kita akan menetapkan rute yang berbeda untuk menangani semua operasi CRUD.

Selain itu, kami akan menggunakan fitur ES6 seperti let, const, promise, fungsi panah, dll. Akan lebih baik jika Anda memiliki pengetahuan sebelumnya tentang konsep-konsep ini serta JavaScript.

Oke langsung saja kita ke langkah-langkahnya :

- Langkah1: Buat direktori baru

Pada langkah pertama ini, saya akan membuat folder menggunakan mkdir perintah untuk memulai aplikasi.

$ mkdir node-mongo-crud
//  masuk ke direktori
cd node-mongo-crud

- Langkah2: Inisialisasi aplikasi

Pada langkah ini, saya akan membuat file dengan nama package.json menggunakan perintah berikut:

$npm init

Kami menggunakan npm perintah untuk menginstal semua dependensi.

Saat Anda menjalankan npm init perintah maka Anda akan meminta hal-hal berikut: 

Seperti yang Anda lihat, saya telah menentukan titik masuk untuk aplikasi kita yang disebut server.js

- Langkah3: Instalasi Paket

Pada langkah ini, saya akan menginstal dependensi dengan menjalankan perintah berikut:

$ npm install express body-parser mongoose --save

--save opsi ini digunakan untuk menyimpan semua dependensi dalam file package.json.

- Langkah4 : Buat titik masuk aplikasi

Pada langkah ini, saya akan membuat entry point menggunakan touch perintah di linux.

$ touch server.js

Struktur direktori:

node-easy-notes-app
    └── node_modules/
    └── package.json
    └── server.js

- Langkah5 : Konfigurasi basis data

Pada langkah ini, saya akan membuat direktori "config" di dalam direktori root aplikasi dan kemudian membuat file konfigurasi di dalam direktori config dengan menjalankan perintah berikut:

$ mkdir config
$ cd config
$ touch database.config.js

database.config.js

- Langkah6: Buat Skema Model

Pada langkah ini, buat direktori baru "aplikasi" di dalam folder root aplikasi dan kemudian buat direktori lain di dalam folder aplikasi dengan menjalankan perintah berikut:

$ mkdir -p app/models
$ cd app/models

//Sekarang buat file di dalam direktori "app/models" 
$ touch categories.model.js

Perbarui kode di bawah ini di file categories.model.js  :

const mongoose = require('mongoose');

const CategorySchema = mongoose.Schema({
    name: String,
    details: String
}, {
    timestamps: true
});

module.exports = mongoose

- Langkah7: Tambahkan Routes

Pada langkah ini, saya akan membuat direktori "route" di dalam direktori aplikasi dan kemudian membuat file route "category.route.js" di dalam direktori route.

$ mkdir app/routes
$ cd app/routes
$ touch category.routes.js

Sekarang salin kode di bawah ini di file "category.routes.js" :

- Langkah8: Panggil routes di server.js

Pada langkah ini, kami memerlukan paket dan mengkonfigurasi server untuk REST API:

- Langkah9: Tambahkan Controller

Pada langkah ini, saya akan membuat direktori Controller di dalam aplikasi dan kemudian membuat file Controller "category.controller.js" di dalam direktori Controller dengan menjalankan perintah di bawah ini:

$ mkdir app/controllers
$ cd app/controllers
$ touch category.controller.js

Sekarang kita akan meninjau fungsi controller yang diimplementasikan di atas satu per satu:

Tambahkan kategori baru :


Daftar semua kategori:

Dapatkan satu kategori:

Perbarui kategori:

Hapus kategori:

Getting Info...

Posting Komentar

Berkomentarlah Dengan Sopan Paman :)
Anda sopan Kami segan :)