API Node.js + Operasi CRUD MongoDB | Bagian 02

Jan 08 2023
Ini adalah Bagian 02 dari rangkaian Operasi Node.js API + MongoDB CRUD.

Ini adalah Bagian 02 dari rangkaian Operasi Node.js API + MongoDB CRUD. Jika Anda tidak membaca Bagian 01, Anda tidak terlambat, ini tautannya, dan menghabiskan sedikit 4 menit untuk itu. [ Tautan ke Bagian 01 ].

Sekarang Anda telah memulai proyek node. Kemudian jalankan di terminal terintegrasi dengan menggunakan npm start. Sekarang, saatnya melakukan impor dan konfigurasi lain untuk menghubungkan database ke aplikasi kita.

Oleh karena itu, kita harus mengimpor paket body-parser ke dalam index.jsfile (server). Paket ini digunakan untuk mengubah badan permintaan menjadi format yang diberikan kemudian akan berada di dalam middleware. Kita dapat mengonfigurasi middleware menggunakan use()metode. Kemudian, apa pun permintaan yang masuk ke aplikasi, badan akan diubah menjadi JSONobjek.

const bodyParser = require("body-parser");
app.use(bodyParser.json());

const express = require("express");
const bodyParser = require("body-parser");
const app = express();
app.use(bodyParser.json());

app.listen(3000, () => console.log("Server is started on 3000"));

Di sini, kami menggunakan MongoDB online. Anda bisa pergi ke MongoDB: Platform Data Pengembang | MongoDB . Jika Anda memiliki server online, Anda dapat masuk ke server tersebut.

Jangan khawatir jika Anda belum membuat server MongoDB.

Cukup klik daftar dan isi forum yang mereka sediakan dan Daftar dengan akun Google.

gambar oleh penulis

Setelah itu, Anda harus menerima syarat dan kebijakan seperti di bawah ini dan Anda harus memberikan jawaban di forum berikutnya.

gambar oleh penulis
gambar oleh penulis
gambar oleh penulis

Buat server Anda dengan pengaturan default yang telah mereka sediakan. Klik buat cluster.

Pergi ke DB, dan dapat melihat cluster default sebagai Cluster0. Kemudian, klik cluster dan buka tab koleksi tempat kami menyimpan data aplikasi kami.

gambar oleh penulis

Saatnya melakukan konfigurasi awal. Kami membutuhkan setidaknya satu pengguna untuk terhubung dengan DB. Untuk itu buka tab Database Access dan Add New Database User.

gambar oleh penulis

Untuk menambahkan pengguna baru Anda akan mendapatkan tab seperti di bawah ini.

gambar oleh penulis

Kemudian kita harus mengkonfigurasi Akses Jaringan. Buka tab Akses Jaringan dan masukkan 0.0.0.0/0sebagai Entri Daftar Akses untuk memungkinkan akses dari mana saja.

gambar oleh penulis
gambar oleh penulis

Ya super keren… Saatnya menghubungkan DB dengan server. Jadi, akan kembali ke aplikasi kita lagi.

Sebagai langkah pertama membuat .envfile. Maka kita perlu mendapatkan akses ke database kita. Kemudian klik connect -> Hubungkan aplikasi Anda di cluster yang kami buat sebelumnya.

gambar oleh penulis

Dan salin koneksi uri ke clipboard Anda.

gambar oleh penulis

Di sini Anda harus mengganti admin dengan peran pengguna yang telah Anda buat dan kata sandi juga harus diganti yang sesuai dengan peran pengguna.

MONGO_URL=mongodb+srv://admin:<password>@questionbank.xgxrf.mongodb.net/employee_db?retryWrites=true&w=majority

const mongoose=require('mongoose')

const dotenv = require("dotenv");

dotenv.config();

const URL = process.env.MONGO_URL

 module.exports=()=>{
    return mongoose.connect(URL)
 }

Oleh karena itu listen()metode harus memohon dan menyisipkan panggilan kembali yang berhasil dari metode koneksi DB.

const dbConnection = require("./db.js");

dbConnection()
  .then(() => {
    console.log("DB is connected!!")
    app.listen(3000, () => console.log("Server is started on 3000"));
  })
  .catch((err) => console.log(err));

gambar oleh penulis
gambar oleh penulis

Oh tidak… Ada peringatan… Akan mencoba menghapus peringatan itu.

mongoose.set('strictQuery', false);hanya menonaktifkan perilaku kueri ketat dengan benar jika Anda menjalankannya sebelum skema dibuat. Setelah skema dibuat, perubahan pada properti ini akan diabaikan. Kemudian tambahkan baris kode ini ke db.jsfile.

mongoose.set("strictQuery", false);

Wow… Sangat keren… kami telah melakukannya…

Guys, saya pikir akan lebih baik untuk istirahat. Saya akan datang dengan Bagian 03 segera. Di sana kita akan membuat pengontrol, memasukkan data ke DB, dan… banyak hal lainnya….

Sampai jumpa untuk Anda…