본문 바로가기

Back-end/Spring boot

[Spring boot] 10일차_REST API와 JSON

REST API

서버의 자원을 클라이언트에 구애받지 않고 사용할 수 있게 하는 설계 방식.

서버에서 보내는 응답이 특정 기기에 종속되지 않도록.

 

Rest API 동작

JSON

서버는 클라이언트의 요청에 대한 응답으로 화면(view)이 아닌 데이터(data)를 전송함. 이때 사용하는 응답 데이터가 JSON(JavaScript Object Notation)임.(과거에는 XML 주로 사용).

+) API(Application Programming Interface) : 애플리케이션을 간편히 사용할 수 있게 하는, 미리 정해진 일종의 약속.

 

자바스크립트 방식 차용. 키&값의 쌍으로 이루어짐.

{
    "키1":값,
    "키2":값,
    "키3":값
}

 

 

 

 

https://jsonplaceholder.typicode.com

 

JSONPlaceholder - Guide

Guide Below you'll find examples using Fetch API but you can JSONPlaceholder with any other language. You can copy paste the code in your browser console to quickly test JSONPlaceholder. Getting a resource fetch('https://jsonplaceholder.typicode.com/posts/

jsonplaceholder.typicode.com

에서 가짜 API를 사용해 무료로 실습 가능.

Talend API Tester 프로그램을 이용해 HTTP 요청을 보내고 돌아온 응답을 확인할 수 있음.

 

HTTP 메서드 : GET, POST, PUT,  PATCH, DELETE

이때 PUT은 기존 데이터를 전부 새 내용으로 변경, PATCH는 기존 데이터 중 일부만 새 내용으로 변경함.

 

 

HTTP 메시지

HTTP 요청, 응답은 텍스트 형식으로 전송.

HTTP 메시지 구성 : 

  • 시작라인 : HTTP 요청 또는 응답 내용이 있음. 시작 라인은 항상 한 줄로 끝남
  • 헤더 : HTTP 전송에 필요한 부가 정보(metadata)가 있음
  • 빈 라인 : 헤더의 끝을 알리는 빈 줄, 헤더가 모두 전송되었음을 알림
  • 본문 : 실제 전송하는 데이터가 있음