11) Spring Boot Rest API와 JSON
1. REST API
서버 자원을 클라이언트에 구애받지 않고 사용할 수 있게 하는 설계 방식입니다.
클라이언트에서 정보를 요청하면 서버는 특정 기기에 종속되지 않고 모든 기기에서 통용할 수 있는 JSON 데이터를 응답
2. JSON 데이터
자바스크립트 방식을 차용한 객체 표현식으로, 키(KEY)와 값(VALUE)의 쌍으로 이루어진 속성(PROPERTY)으로 구성
{
"키1" : 값,
"키2" : 값,
"키3" : 값
}
3. REST API 실습
{JSON} Placeholder 사이트에 가면 가짜 API를 사용해 무료로 각종 테스트를 할 수 있습니다.
이 책에서는 크롬 브라우저 확장 프로그램으로 Talend API Tester를 설치해 REST API 동작을 실습했습니다.
4. HTTP 상태 코드
클라이언트가 보낸 요청이 성공했는지 실패했는지 알려 주는 코드입니다.
응답은 100~500번대까지 5개 그룹으로 나뉘어 있습니다.
1XX(정보) : 요청이 수신돼 처리 중입니다.
2XX(성공) : 요청이 정상적으로 처리됐습니다.
3XX(리다이렉션 메세지) : 요청을 완료하려면 추가 행동이 필요합니다.
4XX(클라이언트 요청 오류) : 클라이언트의 요청이 잘못돼 서버가 요청을 수행할 수 없습니다.
5XX(서버 응답 오류) : 서버 내부에 에러가 발생해 클라이언트 요청에 대해 적절히 수행하지 못했습니다.
5. HTTP 메시지
HTTP 요청과 응답은 실제 텍스트 형식으로 전송되는데, 이를 HTTP 메시지라고 합니다.
HTTP 메시지는 시작 라인, 헤더, 빈 라인, 본문으로 구성됩니다.
시작 라인 : HTTP 요청 또는 응답 내용이 있습니다. 시작 라인은 항상 한 줄로 끝납니다.
헤더 : HTTP 전송에 필요한 부가 정보(METADATA)가 있습니다.
빈 라인 : 헤더의 끝을 알리는 빈 줄로, 헤더가 모두 전송되었음을 알립니다.
본문 : 실제 전송하는 데이터가 있습니다.
'Back-End > Spring Boot' 카테고리의 다른 글
14) Spring Boot 테스트 코드 작성하기 (1) | 2023.11.29 |
---|---|
13) Spring Boot 서비스 계층과 트랜잭션 (1) | 2023.11.29 |
10) Spring Boot CRUD와 SQL 쿼리 종합 (0) | 2023.11.29 |
9) Spring Boot 게시글 삭제하기: Delete (0) | 2023.11.28 |
8) Spring Boot 게시글 수정하기: Update (1) | 2023.11.27 |