Postman 은 GUI 환경에서 HTTP API를 테스트할 수 있다. 간단한 회원가입 과정을 거치면 다음과 같은 화면을 볼 수 있다.
Workspaces 메뉴의 My Workspace에 들어가 + 버튼을 누르면 새로운 작업 환경을 열 수 있다.
Postman에서 Openweather 의 Open API를 사용하여 실습하고자 한다. Openweather는 회원가입 후 토큰을 발급받으면 사용 가능하다.
Openweather의 Current weather data API 이다. 사용하고자 한다면 다음의 양식대로 엔드포인트를 입력하고 요청을 보내면 된다.
서울의 id는 1835848 이다. 서울의 id를 넣고 GET 요청을 한다면 다음과 같을 것이다.
응답 코드는 200으로 정상적인 응답이 돌아왔다. 서울의 위도경도, 날씨, 풍속, 구름 등 다양한 정보를 JSON 형식으로 Body에 담아 응답한다.
Postman은 GET 외에도 POST, PATCH, DELETE 등 다양한 메소드로 요청할 수 있다.
Strapi 는 손쉽게 api를 만들 수 있다. MIT에서 제작했으며 다음의 방식은 V4 버전의 방식이다.
Strapi를 설치하고자 하는 디렉토리에 다음과 같이 입력한다. 뒤의 --quickstart는 개인 선택사항이다. 설치 가이드는 여기 Strapi 공식 문서에서도 확인 가능하다.
yarn create strapi-app 프로젝트명 --quickstart
npx create strapi-app 프로젝트명 --quickstart
설치가 끝나면 다음과 같은 창이 뜰 것이다. 이름과 사용할 이메일, 패스워드를 입력한다.
이제 Strapi를 통해 api를 만들고 관리할 수 있다.
- Content Manager를 통해 DB 테이블을 관리할 수 있다.
- Content-Type Builder에서 DB 테이블을 생성할 수 있다.
Content-Type Builder에서 먼저 테이블을 만든다. 다음과 같이 이름과 타입을 설정해준다.
product, productType은 small Text, productPrice는 integer로 설정했다.
Content Manager에 들어가서 Create new entry로 데이터를 추가해줄 수 있다.
아까 설정한 테이블에 맞는 데이터를 입력해줄 수 있다.
마지막으로 권한을 부여해야 한다. Setting 메뉴로 들어간다.
해당 테이블을 클릭한다. Product에서 권한을 모두 부여했다.
권한을 하나 하나 눌러보면 오른쪽에 다음과 같이 출력된다.
로컬 환경에서 사용하기 때문에 다음과 같이 입력한다.
http://localhost:1337/api/product아까 입력한 데이터가 정상적으로 들어갔다.
야구모자라는 데이터를 POST 요청을 통해 추가하였다. 정상적으로 201 응답 코드를 보이며 추가된 것을 응답의 body에서 볼 수 있다.
오늘은 Postman을 통해서 API를 테스트 해보고 직접 GET, POST, PUT, DELETE 등 다양한 메소드를 활용해 요청을 보내봤다. 그에 따른 응답의 형태가 모두 다른 REST 한 API를 간접적으로 경험해봤다.
어제 배운 내용이 조금 뜬 구름 같이 느껴졌는데 직접 요청, 응답을 테스트 해보면서 눈으로 보니까 조금 더 이해가 쉬운 것 같다.
더불어 REST API 디자인과 관련한 좋은 가이드가 있어covenant 님의 블로그 글을 링크로 남긴다.