Runtime/Node.js

12. dotenv 모듈 사용

김엉배 2023. 3. 12. 22:42
728x90
반응형

 

1.  dotenv 모듈을 설치

  • dotenv 모듈 설치
npm install dotenv

 

 

  • mysql 폴더에 생성한 .env 파일을 환경 변수로 사용하려면 app_mysql.js 파일에 다음과 같이 추가

 

  • app_mysql.js 파일을 실행하고 localhost:3002/customers 접속하면 MySQL에 접속한 후 customers 테이블에 있는 데이터를
    조회하는 것을 확인할 수 있다. 이처럼 dotenv 모듈을 사용하면 보안상 중요한 정보의 프로그램 코드를 노출시키지 않을 수 있다.

 

2.  데이터 조회

  - 앞에서 이미 customers 테이블 조회하는 쿼리를 실행함.

Postman에서 customers 정보 조회

 

 

3.  데이터 추가

  - 고객 정보를 추가하기 위한 쿼리를 작성 후 sql.js 파일에 추가

  • 고객 정보를 추가하는 쿼리문을 'customersInsert'키로 추가

 

  • app_mysql.js 파일을 열고 다음과 같은 라우터를 추가(해당 라우터로 고객 정보를 받고, customers 테이블에 추가)

 

  • 클라이언트에서 body에 담아 전송한 JSON 데이터를 사용하기 위해서는 다음과 같이 express.json() 모듈을 다음과 같이 사용.


  - app_mysql.js 정리

const express = require("express");
require('dotenv').config({ path: 'mysql/.env' });
const mysql = require("./mysql");
const app = express();

// 클라이언트 요청 body를 json으로 파싱 처리
app.use(express.json({
  limit: '50mb' // 최대 50메가
}));

app.listen(3004, () => {
  console.log("Server started. port 3003.");
});

// 고객 정보 조회 라우터
app.get("/api/customers", async(req, res) => {
  const customers = await mysql.query('customerList');
  res.send(customers);
});

// 고객 정보 추가 라우터
app.post('/api/customer/insert', async (req, res) => {
  console.log(req.body)
  const result = await mysql.query('customerInsert', req.body.param);
  res.send(result);
});

 

  • 서버 종료한 후 node app_mysql.js 로 서버 재실행
  • 고객 정보 추가 테스트를 위해 Postman을 사용

 

  • Postman에서 새로 추가된 고객 정보가 조회되는지 확인

 

 

4.  데이터 수정

  • 고객 정보를 수정하는 쿼리문을 'customerUpdate' 키로 추가

 

  • app_mysql.js 파일에 라우터 추가

 

  • Postman에서 고객 정보 수정을 위한 라우터를 호출해 연락처 정보를 수정

1) Add request : PutCustomer

2) Http 요청 메소드 : PUT

3) 요청 URL: http://localhost:3005/api/customer/update 

4) Body -> raw -> JSON 선택

5) 전송할 테이터 작성

6) Send 버튼 클릭

 

  • customers 테이블 다시 조회하면 id가 1인 고객의 phone 정보가 수정된 것을 확인할 수 있다.

 

 

5.  데이터 삭제

  • 고객정보를 삭제하는 쿼리문을 'customersDelete' 키로 추가

 

  • app_mysql.js 파일에 라우터 추가

 

  • 해당 라우터로 삭제할 고객 id를 받고 고객 정보를 삭제. Postman에서 삭제를 위한 request 추가

1) Add request : DeleteCustomer

2) Http 요청 메소드 : DELETE

3) 요청 URL: http://localhost:3005/api/customer/delete/1

4) Send 버튼 클릭

 

  • customers 테이블 다시 조회하면 id가 1인 고객 정보가 삭제된 것을 확인할 수 있다.

 

728x90
반응형