justgo_developer

RESTFul API란? 본문

IT/Spring-boot

RESTFul API란?

다날92 2021. 1. 30. 21:00
728x90
반응형

REST(Representational State Transfer) 정의?

REST(Representational State Transfer)는 월드 와이드 웹과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식이다.
엄격한 의미로 REST는 네트워크 아키텍처 원리의 모음이다.
여기서 '네트워크 아키텍처 원리'란 자원을 정의하고 자원에 대한 주소를 지정하는 방법 전반을 일컫는다. 

- 자원의 이름으로 구분하여 자원의 상태를 주고 받는 것

- HTTP URI를 통해 자원(Resource)을 명시하고, HTTP Method(POST,GET,PUT,DELETE)를 통해 자원의 CRUD 적용하는것을 의미.

 

 

※ URI vs URL vs URN

- URI(Uniform Resource Identifier) 통합 자원 식별자 : 웹 서버가 리소스를 고유하게 식별할 수 있도록 하는 것.

- URL(Uniform Resource Locator) 통합 자원 지시자 : 특정 서버의 한 리소스에 대해 구체적인 위치

- URN(Uniform Resource Name) 통합 자원 이름 : 리소스의 위치에 영향 받지 않는 유일무이한 이름

 

REST 구성 요소 

1. 자원(Resource) : URI

2. 행위(Verb) : Method(GET, POST, PUT, DELETE)

3. 표현(Representation of Resource) : Client가 요청을 하면 Server는 응답. ex)json

 

 

REST API란?

: REST기반으로 구현된 서비스 API

※ API(Application Programming Interface) : 어플리케이션 개발에서 다른 서비스에 요청을 보내고 응답을 받기 위해 정의 된 인터페이스

 

 

REST API Method 정의

RESTFul API이란?

: REST 아키텍처 원리로 구현된 API를 RESTFul API이라고 한다.

 

RESTFul API

 

GET 방식과 POST 방식의 차이점?

1. GET 방식

   - URL에 데이터가 포함되어 요청, 데이터는 헤더에 포함, 

   - 데이터 양이 한계.

   - 캐싱 가능

   - 보안 취약

2. POST방식

   - 노출되지 않는 Body에 데이터를 넣어서 요청.

   - 길이 제한 없음.

   - 캐싱 불가.

   - 보안

728x90
반응형