본문 바로가기

프로그램 강좌

[express]node express #2: Postman 설치

Postman 설치



REST API 를 효과적으로 쓰기 위해서는 Postman을 설치하는 것이 좋다.

https://www.getpostman.com/

이 주소에서 다운받으면 된다. Download App 버튼을 누르자.(윈도우, 맥 둘다 지원)

 

Postman으로 호출 해보기

App.js 중간에 미들웨어를 실행해보자

request: 프론트에서 받아올 정보
response: 백에서 보낼 정보
next: 

/App.js

const express = require('express');
const app = new express(); //app에서 express 생성

//express 미들웨어 실행
app.use('/', (req, res, next) => {
  res.send('root');
});

//포트 생성
app.listen(3000, () => {
  console.log('it is 3000port');
});

마찬가지로 서버를 실행해보자

npm run dev

서버가 실행되고 나면 postman에서 GET을 선택하고 localhost:3000 을 적고 Send 버튼을 누른다.

Body에 root 라고 뜬다면 성공이다.

하지만, 실무에서 웹 페이지는 절대 하나 일리가 없으므로, 이 방법으로만 제작하는 한계가 있다.
여러페이지를 관리하기 쉽도록 바꿔줘야 한다.

여러페이지들을 테스트하기 쉽도록 도와주는 프로그램이 postman의 역할인듯 싶다.


routes 형태로 관리하기

앞서 말한대로 여러파일 관리를 효율적으로 하도록 필요한 페이지를 바꿔줘야 한다.

 

/routes/board.js 파일 생성

const express = require('express');
const route = express.Router();

module.exports = route;

일단 아무 역할 없이 기본사항만 작성한다.

 

/routes/index.js 파일 생성

const express = require('express');
const board = require('./board');
const route = express.Router();

route.use('/board', board);

module.exports = route;

위의 /routes/board.js 를 연결해주는 역할 수행

 

/App.js

const express = require('express');
const app = new express(); //app에서 express 생성
const route = require('./routes');

//express 미들웨어 실행
// app.use('/', (req, res, next) => {
//   res.send('/');
// });
// 효과적인 관리를 위해 router 형식으로 대체
app.use('/', route); //추가

//포트 생성
app.listen(3000, () => {
  console.log('it is 3000port');
});

기존 app.use 에서 바로 호출하던걸 route 형태로 변경했다. 이제 /routes/board.js에서 읽고 쓰고 지우는 REST 형태를 수행하기 위해 컨트롤러가 필요하다.

 

/controllers/board.js

우선 제일 먼저 쓰기부터 작성

//쓰기
exports.boardWrite = (req, res, next) => {
  res.status(200).send('boardWrite');
};

이렇게 생성한 파일을 /routes/board.js 에서 불러오겠다.

/routes/board.js

const express = require('express');
const board = require('../controllers/board'); //추가
const route = express.Router();

route.post('/', board.boardWrite); //board.js의 post사용 //추가

module.exports = route;


자, 이제 터미널에 npm run dev를 실행시켜 주고 접속이 되면
postman 에서 post로 선택하고 localhost/board 해주면 주소가 나오며 "boardWrite" 라고 나온다.

이 부분을 나중에 front의 쓰기 페이지랑 연결해주면 되는거다.


같은 패턴으로 get, delete, put 모두 등록해주면 된다.

 

/controllers/board.js

//쓰기
exports.boardWrite = (req, res, next) => {
  res.status(200).send('boardWrite');
};

//읽기
exports.boardRead = (req, res, next) => {
  res.status(200).send('boardRead');
};

//삭제
exports.boardDelete = (req, res, next) => {
  res.send('boardDelete');
};

//전체교체
exports.boardPut = (req, res, next) => {
  res.send('boardPut');
};

마찬가지로 이렇게 생성한 파일을 /routes/board.js 에서 불러오겠다.

 

/routes/board.js

const express = require('express');
const board = require('../controllers/board');
const route = express.Router();

route.post('/', board.boardWrite);
route.get('/:id?', board.boardRead);
route.delete('/:id?', board.boardDelete);
route.put('/:id?', board.boardPut);

module.exports = route;

주소에 id 라고 적은 이유는 /board/ferrari219 이렇게 id값으로 다른 라우팅 주소를 쓰려고 해서다. id? 라고 적은 이유는 id가 없어도 오류가 안나게끔 테스트하려고 해서다. 반드시 id 값으로 페이지를 읽게 하려면 ?를 삭제해줘야 한다.


이렇게 REST의 모든 과정이 끝났다.


https://gist.github.com/ferrari219/e14867845317f3dd9fc9f3ce59cf1857



2020/01/07 - [프로그램 강좌] - [express]node express #2: Postman 설치

2020/01/06 - [프로그램 강좌] - [express]node express #1:Hello World


728x90