일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- AWS
- typeorm
- docker
- OS
- mysql
- TypeScript
- DATABASE
- css
- MongoDB
- React
- Kotlin
- Scheduling
- python
- S3
- HTML
- Express
- Util
- ubuntu
- Crawling
- Network
- wireshark
- algorithm
- Android
- postman
- node.js
- sequelize
- macos
- linux
- mongoose
- OOAD
- Today
- Total
Seongwon Lim
[Postman] 포스트맨 설치 방법과 node.js로 포스트맨 이용하기 본문
What is Postman?
Postman은 사용자가 구축한 API를 테스트 할 수 있으며 API 라이프 사이클의 각 단계를 간소화시켜 API 개발의 생산성을 높여주는 플랫폼이다. 주로 서버사이드 개발을 하는 개발자들이 본인이 구현한 API를 테스트할 때 많이 사용된다.
How to install Postman?
포스트맨 공식 사이트에서 해당 플랫폼을 다운받을 수 있다. 이메일을 이용해서 직접 계정을 생성할 수 있으며 구글 계정으로도 가입이 가능하다.
필자는 MacOS 운영체제를 사용중이기 때문에 다운로드 페이지에 접속하면 위와 같은 화면이 나온다. 옛날에는 Intel 칩과 Apple 칩의 구분이 없었던 것 같은데 M1이 출시하면서 세분화 된 것 같다. 윈도우 운영체제를 이용중인 사용자들은 아마 윈도우 운영체제에 맞는 앱을 다운받을 수 있을 것이다.
설치가 완료된 후 포스트맨을 실행하면 바로 이용할 수 있다.
(로그인이 되지 않은 경우 로그인 인증을 요구할 수 있다. 포스트맨의 In Sync 기능을 사용하기 위해서는 로그인을 하는 것이 좋다.)
Hwo to use Postman?
포스트맨에 정상적으로 로그인 한 경우 위와 같은 화면이 뜬다. Overview옆의 + 버튼을 통해서 API 테스트를 진행할 공간을 만들 수 있다.
이제 포스트맨의 기능을 조금 더 자세하게 살펴보고자 한다.
해당 부분은 API 요청을 위한 주소를 입력하는 공간이다. 필자는 예시로 localhost:3000을 미리 입력해놓았다. GET 부분은 요청 메서드를 정의하는 드롭다운 메뉴로 우리가 흔히 아는 GET, POST, DELETE 등과 같은 여러 메서드가 존재한다.
해당 부분에서는 데이터를 담아 보낼 때 필요한 Body 부분에 대해서 다루고자 한다.
데이터를 담아 요청을 보내는 Body는 크게 6가지 타입으로 분류할 수 있다.
- none : 기본 세팅값이며 GET 요청과 같이 아무 데이터를 보내지 않을 때 사용
- form-data : 이미지나 영상과 같은 파일을 전송할 때 사용한다. 예를 들면 게시물을 올릴 때 사진을 같이 등록하는 것과 같이 특정 파일 전송 시에 사용되는 타입이다.
- x-www-form-urlencoded : 텍스트만 보낼 때 사용한다. 즉, 파일 첨부는 없다.
- raw : 문자 그대로를 전송한다. 다른 타입의 경우에는 포스트맨이 알아서 처리를 해주지만 raw는 개발자가 정한 형식에 맞는 값을 써주어야 한다.
이런 식으로 raw를 선택하면 형식을 정의할 수 있다. 예를 들어 JSON 형식으로 설정했다면 Request 요청 시 데이터의 형식이 JSON 형태로 들어와야 한다는 뜻이다. - binary : 텍스트를 포함하지 않는 이미지, 영상 등의 파일을 보낼 때 사용한다.
- GraphQL : 페이스북에서 만든 Query Language 이다. Client가 Server의 데이터를 효율적으로 가져올 소요가 있을 때 사용한다. 쿼리문을 작성해서 요청할 수 있다.
하단 부분은 API 요청 시 결과가 나타나는 공간이다. 400, 200등과 같은 응답 코드와 Response로 전달할 데이터를 나타낼 수 있으며 또는 Response시 전달할 메세지를 응답할 수도 있다.
Node.js를 이용하여 Postman 직접 사용해보기
간단하게 node.js 개발 환경을 구축해서 postman을 이용하여 직접 API 테스트를 해 볼 것이다.
우선 노드 환경을 구축하기 위해 npm init 명령어를 통해 초기 환경을 구성하고
- npm install express --save를 통해서 express 개발 환경을 구성한다.
그 다음으로는 index.js 파일을 생성하여 아래와 같이 코드를 작성하고 node index.js 명령어를 이용하여 서버를 실행한다.
요청 경로는 localhost:3000으로 통일하여 테스트를 진행했다.
const express = require('express');
const app = express();
app.get('', (req, res, next) => {
res.status(200).send({
message: "GET 요청이 성공적으로 수행됨"
});
});
app.post('', (req, res, next) => {
res.status(200).send({
name: req.body.name,
email: req.body.email
});
});
app.listen(3000, () => {
console.log("starting server at port 3000..");
});
GET 요청 수행 결과
StatusCode 200과 res.send()에서 정의한 메세지가 적절하게 응답으로 오는 것을 확인할 수 있다.
POST 요청 수행 결과
POST요청은 Body에 JSON 형식의 데이터를 담아서 보냈다. 요청에 대한 결과 메세지도 알맞게 출력한 것을 확인할 수 있다. POST 요청 시 위와 같이 데이터를 담아 보내는 것은 로그인, 회원가입 등의 기능을 구현할 때 많이 사용된다.
PUT, DELETE 등의 메서드는 따로 구현하지 않았지만 GET, POST와 동일하게 로직을 구현한 뒤 요청을 보내면 잘 작동하는 것을 확인할 수 있을 것이다. 데이터베이스를 연동하지 않았기 때문에 변경하거나 삭제할 데이터가 존재하지 않아서 다루지는 않았지만 직접 데이터베이스와 연동해서 여러 API 테스트를 진행해보는 것을 추천한다.
'Util' 카테고리의 다른 글
[Util] 구글 검색기록 끄는 방법 (1) | 2022.05.11 |
---|---|
[Util] 맥북 Homebrew란? 설치 및 삭제 방법 알아보기 (0) | 2022.05.07 |
[Util] 터미널 Tree 명령어 (0) | 2022.05.07 |
[Postman] 포스트맨을 이용하여 API 명세서 작성하기 (0) | 2022.05.07 |
[Util] 맥북 무료 화면 분할 프로그램, Rectangle 사용법 (0) | 2022.05.07 |