REST API 와 JSON
웹 브라우저 뿐 만 아니라 다른 기기에서도 정보를 요청하고 응답할 수 있게 하는 REST API 와 JSON 관해 알아보기
웹 서비스를 사용하는 클라이언트는 웹 브라우저만 있는게 아님
스마트폰, 스마트 워치 등 각종 기기들(클라이언트) 이 클라이언트의 모든 요청에 응답할 줄 알아야 한다.
웹 브라우저 마다도 다르고 기기 마다도 다른 요청이 있고 각각에 맞는 뷰 페이지를 제공해야 한다.
REST API : Representational State Transfer API
서버의 자원을 클라이언트에 구애받지 않고 사용할 수 있게 하는 설계 방식
HTTP의 요청에 대한 응답으로 서버의 자원을 반환한다.
이 때 서버에서 보내는 응답이 특정 기기에 종속되지 않도록 모든 기기에서 통용될 수 있는 데이터를 반환해야
서버는 클라이언트의 요청에 대한 응답으로 화면이 아닌 데이터를 전송한다.
이때 사용하는 응답 데이터가 JSON JavaScript Object Notation
API : Application Programming Interface : 애플리케이션을 간편히 사용할 수 있게 하는, 미리 정해진 약속
사용자와 프로그램 간 상호 작용을 돕는다.
XML : 사용자 정의형 HTML
JSON : 자바스크립트 방식 차용 객체 표현식
JSON 데이터 :
key value 로 구성된 정렬되지 않은 속성의 집합
REST API 동작 살펴보기
연습용 REST API 서버에 접속해서 HTTP 요청과 응답 실습하기
연습용 REST API 서버 {JSON} Placeholder 사이트
Resources 가짜 더미 데이터
게시글 댓글 등등의 자원이 있음
POST 메서드를 통해 지정된 URL로 요청을 보내면 게시판에 새 글이 등록되고 새로 생성된 데이터는 json 형태로 반환된다.
Talend API Tester
http 상태 코드
클라이언트가 보낸 요청이 성공했는지, 실패했는지 알려주는 코드
100~500 5개 그룹
1 : 요청이 수신돼 처리 중
2 : 성공
3 : 요청을 완료하려면 추가 행동 필요
4: 클라이언트 요청이 잘못돼 서버가 요청을 수행할 수 없다
5: 서버 내부 에러 발생, 요청에 적절히 수행 불가