RESTful API는 RESTful (REpresentational State Treansfer) 규정에 맞게 만든 웹 서비스를 의미한다.
RESTful 웹 서비스의 구조는
GET방식 (조회)
POST방식 (추가)
PUT방식 (수정)
DELETE방식 (삭제)
으로 나뉜다.
위 방식에 맞춰 RESTfulgks 웹 서비스를 개발해보자.
DB는 DummyDB를 미리 작성해 놓았다.
DummyDB는 get, insert, remove 메소드가 있다.
Dummy.get(id) -> id를 매개변수로 받아 해당 id가 포함된 정보를 JSON형태로 반환해준다.
Dummy.insert(data) -> 아래와 같은 JSON형태의 데이터를 매개변수로 받아 DummyDB에 저장한다.
{ name: name, region: region}
Dummy.remove(id) -> 해당 id의 데이터를 삭제한다.
먼저 GET 방식의 라우터를 설정해준다. /user의 경로로 접속했을 경우 DummyDB의 모든 JSON데이터를 출력하며, id를 params로 주어 접속 할 경우 해당 아이디의 JSON 데이터를 출력해준다.
다음으로는 POST방식의 라우터를 설정해 준다. /user 경로로 데이터를 post했을 경우 name과 region이라는 변수로 받아, DummyDB에 데이터를 추가해 준다.
다음으로는 PUT 방식의 라우터를 설정해준다. /user경로에 params로 id 값을 주어 해당 경로에 put 요청을 했을 경우 request 받은 id, name, region값으로 DummyDB에 있는 값을 수정해 준다.
마지막으로 DELETE 방식이다. /user의 params로 id값을 준 경로로 DELETE 요청을 보내면, 해당 id의 JSON 데이터를 삭제한 뒤 남아있는 DummyDB의 데이터들을 반환한다.
서버는 localhost의 4000번 포트로 접속했을 경우 응답하도록 설정하였다.
이와 같이 RESTful API를 작성한 후
POSTMAN을 통해 잘 동작하는지 테스트해보자.
user 경로로 POST요청을 했을 경우, 200의 상태코드와 함께 데이터 추가가 잘 된 것을 확인할 수 있다.
이제 localhost:4000/user 경로로 접속하여 추가한 데이터가 잘 출력이 되는지 확인해보겠다.
데이터가 잘 들어간 것을 확인할 수 있다.
다음으로는 POSTMAN 을 사용하여 DELETE 요청을 보내보겠다. 경로를 지정하여 아까 추가한 1번 id 의 데이터를 삭제해보자.
상태코드 200번과 함께 DELETE 요청이 잘 보내진 것을 확인할 수 있다. 다시 localhost:4000/user 경로로 접속했을 경우,
아까 추가했던 데이터가 삭제되고 빈 화면이 나타나는 것을 확인할 수 있다.
'Node.js' 카테고리의 다른 글
[Node] 미들웨어 (middleware) (0) | 2021.10.27 |
---|---|
[Node] mysql 쿼리문 안에 변수 삽입 (0) | 2021.09.26 |
[Node] mysql 접속 (0) | 2021.09.15 |
[Node] React, NodeJS hppt통신 CORS 문제 해결 (0) | 2021.09.13 |
[Node.js] 전역 변수와 전역 객체 (0) | 2021.09.07 |