본문 바로가기
부트캠프/코드스테이츠 백엔드부트캠프 43기

코드스테이츠 백엔드 부트캠프 43기 (30일차-HTTP)

by 고구마는호박고구마 2023. 1. 27.
API

 

⭐️ REST API

 

API란 ?

API(Application Programming Interface)는 정의 및 프로토콜 집합을 사용하여 두 소프트웨어 구성 요소가 서로 통신할 수 있게 하는 메커니즘입니다. 예를 들어, 기상청의 소프트웨어 시스템에는 일일 기상 데이터가 들어 있습니다. 휴대폰의 날씨 앱은 API를 통해 이 시스템과 ‘대화’하여 휴대폰에 매일 최신 날씨 정보를 표시합니다.

 

과거의 SOAP API 

이 API는 단순 객체 접근 프로토콜을 사용합니다. 클라이언트와 서버는 XML을 사용하여 메시지를 교환합니다. 과거에 더 많이 사용되었으며 유연성이 떨어지는 API입니다.

 

-https://aws.amazon.com/ko/what-is/api/

 


 

현재의 REST API

REST API란? - 형식이 잘 갖춰진 API (밑의 형식에 따라) - 기술이 아니다.

REST API는 HTTP 메서드와 어떤 URI(자원을 구조와 함께 나타내는 방식)로 갖춰지는지 

-> RESTFUL API 는 위의 HTTP 메서드와 URI가 잘 갖춰진 API

 

URL (단순한 위치 = 리소스의 가장 흔한 형태로, 특정 서버의 한 리소스에 대한 구체적인 위치를 서술한다.)

URI  (단순히 클릭해서 하나하나 들어가는 것이 아니라 www.google.com/search?XXX&XXX  검색을 하면 원하는 페이지를 찾아주는)

 

 

HTTP 메서드를 활용하여 CRUD를 적용

 

Create = POST 메서드 -> POST 메서드가 넘어온다면 이 API는 어떤걸 생성하는 거구나

Read  = GET 메서드 -> GET 메서드가 넘어온다면 이 API는 어떤걸 출력하는 거구나

UPADATE = PUT 메서드 -> PUT 메서드가 넘어온다면 이 API는 어떤걸 수정하는 거구나

DELETE = DELETE 메서드 -> DELETE 메서드가 넘어온다면 이 API는 어떤걸 삭제하는 거구나

 

+이처럼 REST 의 가장 중요한 특성은 각 요청이 어떤 정보나 요청을 위한 것인지 그 모습 자체만으로 추론이 가능

 

 

+

Restful Web Services With Spring Boot

해당위치의 자원까지 포함 URI
해당위치만 포함 URL
Rest 의 3가지
자원 : 모든 리소스는 URI로 식별한다.
행위 : HTTP 메소드
표현 : 원칙 4

원칙 1 : 모든 리소스는 URI로 식별한다.
원칙 2 : 모든 리소스는 다중 표현을 가질 수 있다.
원칙 3 : 모든 리소스는 표준 HTTP 메소드로 접근/변경/생성/삭제 할 수 있다.
원칙 4 : 서버는 상태 정보를 갖지 않는다.

성숙도
4단계로 구분이 되며 0~3 
2단계부터 진정한 레스트풀 서비스 수준에 이르뤘다고 할 수 있다.


RESTful API Naming
행위가 아닌 대상(자원) - ( 쉽게 말하면 동사가 아닌 명사 )


댓글