안녕하세요.

오랜만에 글을 작성해봅니다.

 

변명이지만 나름 열심히 공부하고 있다보니,

글을 작성할 시간이 없었네요.

 

 

 

 

모놀리식으로 개발을 진행해도 될 정도의 작은 프로젝트나 조금은 낡은(?) 프로젝트라면

보통은 api 를 개발하면서 동시에 view 단의 코드도 개발을 하기 때문에

별도의 api 서버를 두지 않아도 문제가 되지 않지만

 

프론트엔드와 백엔드 별도로 개발을 진행한다면

백엔드의 api 개발이 모두 완료 될때까지 기다릴 수는 없기에

 

가짜 데이터 서버를 두고 먼저 개발을 진행할 필요가 있습니다.

특정 Request 를 날리면 가짜 데이터를 보내줄 가상 서버를 MockServer 라고 하는데 

 

오늘은 api 개발을 위한 툴인 postman 을 이용해서 mock server 를 구축해보려고 합니다.

 

구축하기에 앞서서 mock 서버를 사용하는 비용은 한달을 기준으로 몇건을 요청하느냐에 따라 달라지는데 아래와 같습니다.

무료 ver 팀 ver 비즈니스 ver 엔터프라이즈 ver
1,000 건 10,000 건 100,000 건 1,000,000 건

  

요금제나 자세한 내용을 확인하고 싶으신 분은 아래 링크를 참고해주세요.

https://www.postman.com/pricing/

 

Plans & Pricing | Postman

Curious about Postman pricing? Postman has plans for teams of any size - from free plans for individuals to enterprise plans for your whole organization.

www.postman.com

 

 

 

목서버를 구축하는데에는 많은 방법이 있겠지만 이 포스트에서는 가장 쉽게 생성할 수 있는 방법을 이용해서 구축해보려고 합니다.

 

 

+ 버튼을 눌러 컬렉션 생성하기


 

컬렉션 우클릭 후 목 컬렉션 선택

 

 

 

목서버 데이터 입력

이름, 버전 정보 등등 데이터를 입력한 뒤 Create Mock Server 클릭

 

 

목 서버가 생성 되었습니다.

서버를 생성하고 나면 링크를 하나 줍니다.

Postman 은 요청을 받을 수 있는 URL 을 클라이언트에게 할당 해줍니다. 

 

이제 목서버에 대한 기초 환경 구성은 끝났습니다.

다음 해야할 일은, api 서버에 Request를 날렸을 때 서버가 Return할 것으로 예상되는 데이터를 세팅하는 단계입니다.

 

예를 들어 사용자 정보를 반환하기 위해서 "http://localhost:8080" 이라는 서버에

아이디가 1인 유저를 조회하는 요청을 날렸다고 하면 다음과 같은 정보를 서버에 날릴 것입니다.

 

GET http://localhost:8080/users/1

 

이 때 서버는 다음과 같은 데이터를 반환합니다.

{
    "id": 1,
    "name": "kim",
    "age": 6
}

 

이렇게 요청(request)과 응답(data)에 대한 샘플을 setting 하는 것이 다음 과정의 목적입니다.

 

 

목 서버에 요청 샘플 추가하기

Request 추가

example 추가하기

우측의 (...) 버튼을 클릭해서 example을 추가합니다.

 

 

샘플 데이터 입력
  • 좌측에 보이는 리스트는 방금 추가한 목서버 컬렉션과 요청 샘플입니다.
  • 가운데 상단에는 Request 에 응답할 method 와 url을 지정할 수 있습니다.
    • 이 때, url은 아까 mock 서버를 생성한 뒤 postman이 제공했던 주소로 시작을 해야합니다.
  • 가운데 2번째에는 서버에 데이터를 전달할 때 사용합니다. post 요청 등등에 사용할 수 있습니다. (RESTful)
  • 가장 하단에는 서버가 보여줄 데이터를 setting 합니다.
  • 저장 버튼을 눌러 저장합니다.

 

세팅이 완료된 모습

 

 

요청 날리기

이제 만든 목서버에 요청을 날려봐야겠죠

가장 만만한게 GET 방식으로 만들어 브라우저로 요청날리는 거 아니겠습니까?

 

한번 해봅시다.

 

 

브라우저를 통해서 요청 날리기

세팅해둔 데이터가 브라우저를 통해 보이는 모습입니다.

 

이로서, 백엔드 서버에 api 요청시 반환할 것이라고 예상되는 기대값을 setting 완료했고

백엔드 개발이 완료되지 않고도  프론트 엔드 개발을 진행할 수 있게 되었습니다.