웹 풀스택

Postman으로 GET, POST 테스트해보기

kevinmj12 2025. 2. 17. 15:56

REST api에는 GET, POST, PUT, DELETE 등 여러 종류가 있고, 종류마다 역할이 다르다.

지금까지는 서버로부터 데이터를 조회하여 받아오는 작업인 GET만 사용하고 테스트해보았는데,

서버로 데이터의 생성을 요청하는 작업인 POST를 사용해보자.

 

const express = require("express");
const app = express();
const port = 3000;

// GET
app.get("/get-test", function (req, res) {
  res.send("Hello GET!");
});

// POST
app.post("/post-test", function (req, res) {
  res.send("Hello POST!");
});

app.listen(port, () => {
  console.log(`Example app listening on port ${port}`);
});

 

/get-test에는 GET 요청을, /post-test에는 POST 요청을 처리하도록 코드를 작성하였다.

localhost:3000/get-test에 접속하면 Hello GET!이라는 문구가 잘 출력되는 것을 볼 수 있지만,

localhost:3000/post-test에 접속하면 Cannot GET / post-test라는 문구가 나오며 POST 명령이 실행되지 않는다.

웹브라우저에서 url로 접근하는 행위는 GET 요청이기 때문에 웹브라우저에서는 GET 요청만 테스트해볼 수 있고, POST 등의 다른 요청은 처리할 수 없기 때문이다.

POST 요청을 테스트해보기 위해 Postman을 사용하여 보자.

 

https://www.postman.com/

 

Postman: The World's Leading API Platform | Sign Up for Free

Accelerate API development with Postman's all-in-one platform. Streamline collaboration and simplify the API lifecycle for faster, better results. Learn more.

www.postman.com

Postman은 API를 테스트하기 위해 사용되는 가장 대중적인 API 플랫폼이다.

웹에서도 간단하게 테스트를 할 수 있고, 애플리케이션을 설치하여 테스트를 진행할 수도 있다.

 

애플리케이션을 실행해보면 Untitled Requres가 열리며 여러 가지 설정을 할 수 있는 창이 나온다.

먼저 url란에 localhost:3000/get-test를 입력하여 GET 요청을 테스트해보자.

하단의 Body에 Hello GET! 이라는 GET 요청이 성공적으로 처리된 것을 볼 수 있다.

이어서 url 옆의 GET 버튼을 눌러 요청을 POST로 바꾸고, localhost:3000/post-test를 입력하여 테스트를 진행해보자.

Hello POST!가 출력되며 POST 요청이 성공적으로 처리된 모습을 볼 수 있다.

이와 같이 웹브라우저에서는 테스트할 수 없었던 POST 등의 요청들도 Postman에서 손쉽게 테스트할 수 있다.

 

이제 이를 응용하여, 사용자의 이름을 추가하는 요청을 처리하도록 구현해보자.

const express = require("express");
const app = express();
const port = 3000;

const people = [];
people.push("Tom");

// GET
app.get("/get-people", function (req, res) {
  res.send(people);
});

// POST
app.use(express.json());
app.post("/add-person", function (req, res) {
  const name = req.body.name;
  people.push(name);
  res.send(`Add name ${name}!`);
});

app.listen(port, () => {
  console.log(`Example app listening on port ${port}`);
});

people이라는 배열을 만들어 사람들의 이름을 관리하고, get-people GET 요청을 통해 이를 받아오도록 해보자.

그리고 add-person POST 요청을 통해 name을 입력하면 people배열에 이를 추가하도록 할 것이다.

먼저 get-people GET 요청을 보냈을 때, 배열 내에 "Tom" 한 명만 들어있는 모습을 볼 수 있다.

이어서 add-person POST 요청을 통해 "James"를 추가해보자.

Postman에서 Body에 raw를 선택한 후, JSON 형식으로 { "name": "James" } 를 함께 요청을 한다.

여기서 주의할 점은 서버에서 JSON 형식으로 보내지는 것을 이해할 수 있도록 

app.use(express.json()); 을 반드시 추가해주어야 한다는 것이다.

성공적으로 요청이 처리되면, Add name James!라는 문구가 출력된다.

 

다시 돌아와 get-people GET 요청을 보내면 people 배열에 James가 추가된 것을 확인할 수 있다!