REST API와 JSON의 등장 배경
웹 서비스를 사용하는 클라이언트에는 스마트폰, 태블릿, 각종 센서 등 모두 클라이언트이다.
서버는 이러한 모든 클라이언트의 요청에 응답해야 하는데 그 방법으로 REST API를 사용하는 것이다.
REST API는 서버의 자원을 클라이언트에 구애받지 않고 사용할 수 있게 하는 설계방식이다.
REST API 방식에서는 HTTP 요청에 대한 응답으로 서버의 자원을 반환한다.
서버는 클라이언트의 요청에 대한 응답으로 화면이 아닌 데이터를 전송하는데,
이 때 사용하는 응답 데이터는 JSON(Java Script Object Notation)이다.
JSON 데이터는 키와 값으로 구성된 정렬되지 않은 속성의 집합으로 키는 문자열이므로 항상 큰따옴표로 감싸고,
값은 문자열인 경우에만 큰따옴표로 감싼다.
REST API 동작 살펴보기
{JSON} Placeholder 사이트에 접속해서 스크롤을 내리면 보이는 Try it에 Run script로 실행을 먼저 시켜보면 아래와 같다.
스크롤을 더 내려서 보면 Routes가 보이는데 REST API는 모든 메서드를 지원한다.
각 메서드별 요청을 보낼 때 사용하는 URL 경로를 확인할 수 있다.
Routes의 guide를 클릭하면 페이지가 바뀌면서 다양한 예시 또한 볼 수 있다.
실습을 위해 이제 크롬 웹 브라우저에 Talend API Tester를 먼저 설치해준다.
위와 같은 화면에서 파란색 버튼을 클릭해 프로그램을 시작한다.
method는 GET으로 URL은 'https://jsonplaceholder.typicode.com/posts'와 같이 작성하고 요청을 보내면,
요청이 성공적으로 처리되었다는 200 응답과 함께 아래와 같이 body에서 JSON 데이터를 확인할 수 있다.
{JSON} Placeholder 사이트에서 제공하는 게시글은 총 100개인데 101번째 게시글을 요청하면 어떻게 될까?
위의 이미지와 같이 해당 게시글을 찾을 수 없어 응답코드 404 에러가 난다.
이번에는 POST 요청하고 응답받기 실습을 해 볼 것이니 메서드를 POST로 바꾸고,
URL은 'https://jsonplaceholder.typicode.com/posts'로 하여 body 부분에 아래와 같이 작성 후 send 해준다.
응답으로 201이 오면서 body 부분으르 보면 새로 생성된 데이터가 JSON 형식으로 잘 반환된 것을 볼 수 있다.
데이터 생성 요청 시 body에 JSON 데이터를 잘못 표기한다면 아래와 같이,
응답 코드 500 서버 내부 에러와 함께 'SyntaxError:...'라고 알려준다.
데이터 수정 및 삭제 시에도 위와 유사한 과정으로 실습을 진행해 보았다.
![]() |
![]() |
'Backend' 카테고리의 다른 글
코딩자율학습단 스프링부트_12장 (0) | 2024.08.19 |
---|---|
코딩자율학습단 스프링부트_11장 (0) | 2024.08.17 |
코딩자율학습단 스프링부트_9장 (0) | 2024.08.15 |
코딩자율학습단 스프링부트_8장 (0) | 2024.08.14 |
코딩자율학습단 스프링부트_7장 (0) | 2024.08.13 |