Node.js API + MongoDB CRUD 작업 | 파트 02

Jan 08 2023
이것은 Node.js API + MongoDB CRUD 작업 시리즈의 02부입니다.

이것은 Node.js API + MongoDB CRUD 작업 시리즈의 02부 입니다. Part 01을 읽지 않았다면 늦지 않았습니다. 여기 링크가 있으며 4분 정도 소요되었습니다. [ 파트 01 링크 ].

이제 노드 프로젝트를 시작했습니다. 그런 다음 를 사용하여 통합 터미널에서 실행합니다 npm start. 이제 데이터베이스를 애플리케이션에 연결하기 위해 다른 가져오기 및 구성을 수행할 시간입니다.

따라서 body-parser 패키지를 index.js(서버) 파일로 가져와야 합니다. 이 패키지는 요청 본문을 지정된 형식으로 변환하는 데 사용되며 미들웨어 내부에 있습니다. 방법 을 사용하여 미들웨어를 구성할 수 있습니다 use(). 그런 다음 응용 프로그램에 어떤 요청이 오든 본문이 JSON개체로 변환됩니다.

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"));

여기서는 온라인 MongoDB를 사용합니다. MongoDB: 개발자 데이터 플랫폼 | 몽고DB . 온라인 서버가 있는 경우 로그인할 수 있습니다.

MongoDB 서버를 만들지 않았더라도 걱정할 필요가 없습니다.

가입을 클릭하고 그들이 제공하는 포럼을 작성하고 Google 계정으로 가입하십시오.

작성자의 이미지

그 후에는 아래와 같은 약관 및 정책에 동의해야 하며 다음 포럼에 답변을 제공해야 합니다.

작성자의 이미지
작성자의 이미지
작성자의 이미지

제공된 기본 설정으로 서버를 생성합니다. 클러스터 만들기를 클릭합니다.

DB로 이동하면 기본 클러스터가 Clustor0으로 표시됩니다. 그런 다음 클러스터를 클릭하고 애플리케이션 데이터를 저장하는 컬렉션 탭으로 이동합니다.

작성자의 이미지

초기 구성을 수행할 시간입니다. DB에 연결하려면 최소한 한 명의 사용자가 필요합니다. 이를 위해 데이터베이스 액세스 탭으로 이동하고 새 데이터베이스 사용자 추가로 이동합니다.

작성자의 이미지

새 사용자를 추가하려면 아래와 같은 탭이 나타납니다.

작성자의 이미지

그런 다음 네트워크 액세스를 구성해야 합니다. 네트워크 액세스 탭으로 이동하여 0.0.0.0/0어디에서나 액세스할 수 있도록 액세스 목록 항목으로 삽입하십시오.

작성자의 이미지
작성자의 이미지

네 완전 멋집니다... 이제 서버와 DB를 연결할 차례입니다. 그래서 다시 우리의 응용 프로그램으로 돌아갈 것입니다.

첫 번째 단계로 .env파일을 만듭니다. 그런 다음 데이터베이스에 액세스해야 합니다. 그런 다음 연결 -> 이전에 만든 클러스터에서 애플리케이션 연결을 클릭합니다.

작성자의 이미지

그리고 연결 URI를 클립보드에 복사합니다.

작성자의 이미지

여기에서 관리자를 이미 생성한 사용자 역할로 교체해야 하며 암호도 사용자 역할에 해당하는 것으로 교체해야 합니다.

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)
 }

따라서 listen()메소드를 호출하여 연결 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));

작성자의 이미지
작성자의 이미지

오 이런... 경고가 있습니다... 경고를 제거하려고 합니다.

mongoose.set('strictQuery', false);스키마가 생성되기 전에 실행하는 경우에만 엄격한 쿼리 동작을 올바르게 비활성화합니다. 스키마가 생성된 후 이 속성에 대한 변경 사항은 무시됩니다. 그런 다음 이 코드 줄을 db.js파일에 추가합니다.

mongoose.set("strictQuery", false);

와우...대단해...해냈어...

얘들아, 쉬는 게 좋을 것 같아. 곧 Part 03 으로 찾아오겠습니다 . 거기에서 우리는 컨트롤러를 생성하고, DB에 데이터를 삽입하고… 더 많은 것들을…

그때까지 안녕히 계세요…