본문 바로가기
코딩과 알고리즘

REST API와 포스트맨~!

코틀린 학습을 위한 백앤드 서버 막바지 준비과정입니다 :)


학습을 위한 준비과정이 더 큰 것 같네요 ㅎ..
지난 게시글에서 Node.js 를 이용한 단순한 Restfull API 서비스를 준비했었는데요.

https://itadventure.tistory.com/599

 

구름IDE + Node.js + Rest API

코틀린 서버 연동 학습을 위해 단순한 Restful API 백앤드 서비스를 구름IDE에 준비해 보았습니다. 크레이가 가장 익숙한 언어는 PHP이지만 요즘 트랜드에 따라 Node.js 로 준비하였는데요. 관련 내용

itadventure.tistory.com

코틀린으로 개발하기 전에 이 Restful API가 잘 작동하는지 테스트가 필요한데요. 
가장 보편적인 GET 통신 방식은 그냥 단순히 웹브라우저에서 테스트가 가능했습니다.

하지만 POST, PUT, DELETE 는 일반적인 웹 방식으로는 테스트가 어려운데요.
이 통신 방식을 테스트 할 좋은 툴이 있습니다.
바로 포스트맨~이지요.

 

포스트맨 가입

포스트맨 사이트 URL은 아래와 같습니다.

https://www.postman.com/

포스트맨 사이트는 회원 가입을 하셔야 사용할 수 있는데요.
Sign Up for Free(무료로 회원 가입) 버튼을 선택 후,

회원가입 양식을 채워넣어서 가입하는 방법도 있지만 그냥 간단히 구글 아이디로 가입 할 수도 있습니다.
크레이는 아주 간단히 Sign up with google ( 구글로 가입 ) 을 통해서 가입을 진행했지요.
구글 아이디만 있으면 하여튼 편리한게 여기저기 많은 것 같습니다.

구글 아이디 선택화면은 한글로 보이니 화면 캡쳐는 넘어가겠습니다.

가입을 완료하면 아래와 같이 시커먼 화면이 등장하는데요.
영어 울렁증이 있더라도 겁먹으실 것 없습니다.

Start with something new 아래 파란 글씨 Create New ( 새로 생성 ) 을 선택하고,

이어지는 화면에서 HTTP Request ( HTTP 요청 ) 를 선택하면 되거든요.

그러면 REST API 를 테스트할 수 있는 창이 등장합니다. 야호-!

 

기본 사용법

여기서 사용할 부분은 딱 4군데입니다.

1) 영역의 화살표를 클릭하면 선택목록이 펼쳐지는데요.
이 중 테스트에 활용할 항목은 3가지입니다.
GET, POST, PUT, DELETE 인데 GET 은 일반웹에서 테스트 가능하니 넘어가고
다른 3가지는 잠시 후 살펴보겠습니다.

2) 영역에는 호출할 앤드포인트 URL과 API명을 적어주면 됩니다.
앤드포인트 URL 이 http://13.209.255.71:57156 이고 API가 /newuser 라면
URL 뒤에 /newuser 를 붙인 주소를 적는 것이지요

http://13.209.255.71:57156/newuser

3), 4) 영역은 키(key)와 밸류(value)값을 적어주면 되는데요.
회원정보 추가 API를 사용해보도록 하겠습니다.

회원추가 API 호출

만일 회원정보를 추가하는 API 명세가 아래와 같다면,

API : /newuser
Method (메소드) : POST
member_id : 회원아이디
passwd : 패스워드
nickname : 닉네임

화면을 아래와 같이 구성하면 되는데요.
KEY, VALUE 를 입력하실 때는 Params 탭이 선택된 상태여야 합니다.

참고로 주소 부분은 ../newuser 까지만 입력하고,
그 뒷 부분은 KEY, VALUE를 입력하면 자동으로 구성되는 부분이라 입력하지 않아도 됩니다.

이제 회원정보를 추가할 모든 것이 준비가 되었습니다.
두근반 세근반 되는 마음으로 로켓을 점화 발사하듯, Send 버튼을 누르면!

화면 아래 Body 영역에 결과가 표시됩니다.
{"msg" : "ok"} 라고 정상적으로 표시되었군요.

MYSQL 툴에 들어가보니 정상으로 회원정보가 입력된 것을 확인할 수 있습니다.

여담이지만 회원 아이디 중복체크같은 기능은 넣지 않았기 때문에
계속 Send 버튼을 누르면 아래처럼 됩니다..
이 부분은 진행하면서 수정하는 것으로 하겠습니다.

회원정보 수정 API 호출

회원정보 수정은 /edituser API 를 사용하면 되는데요
프로토콜 명세가 아래와 같습니다.

API : /edituser
Method : PUT
member_id : 회원아이디
passwd : 패스워드
nickname : 닉네임

회원 추가 API와 다른 점이 있다면, member_id 가 일치하는 회원을 찾아 패스워드와 닉네임을 수정해 주는 역활만 합니다. 패스워드가 맞는지 검사같은건 안 합니다. 초간단하지요 :)

아래와 같이 내용을 수정하고 Send 버튼을 클릭하니

정상적으로 변경된 것을 확인할 수 있었습니다.

회원 삭제 API 호출

이제 마지막으로 삭제 API를 테스트해볼텐데요.
삭제 API는 패스워드나 닉네임 정보를 넘기지 않습니다.
그냥 회원 아이디만 넘겨줍니다.

API 명세는 아래와 같은데요.

API : /deluser
Method : DELETE
member_id : 회원아이디

이미 입력한 항목 3개중 2개를 삭제하려면,
삭제할 항목이 있는 줄의 Bulk Edit 부분에 마우스를 갖다 대고 휴지통 아이콘을 클릭하면 됩니다.

그래서 아래와 같이 화면을 구성한 다음, Send 버튼을 누르면 되는데요.

그동안 입력하고 수정했던 cray7 이란 아이디가 감쪽같이 사라진 것을 볼 수 있었습니다.

끄-읏~

이제 다시 코틀린으로~

코틀린으로 안드로이드에서 서버 연동을 하려다 보니
서버쪽 준비하고 글 쓰느라 좀 시간이 걸린것 같습니다.
레트로핏인가 뭔가 하는 걸 익혀서 다음 소식 또 전해드리도록 하겠습니다.

공감과 댓글은 크레이의 IT탐구생활에 큰 힘이 됩니다.
오늘도 방문해주신 모든 분들, 감사합니다 !