본문 바로가기
기타 CS

기술 면접 준비 - RESTful API

by 밝지 2023. 2. 27.
728x90
반응형

REST(Representational State Transfer) 

REST는 API 동작 방식에 대한 조건을 부과하는 소프트웨어 아키텍처입니다. 인터넷과 같은 복잡한 네트워크 환경에서 통신을 관리하기 위한 지침으로 처음 만들어졌습니다. REST 기반 아키텍처를 사용하면 대규모의 고성능 통신을 안전하게 할 수 있습니다. REST 아키텍처를 따르는 API를 REST API라고 합니다. REST 아키텍처를 구현하는 웹서비스를 RESTful 웹서비스라고 합니다. 
 
 

REST 아키텍처 스타일의 원칙

  • 균일한 인터페이스 
  • 무상태
  • 계층화 시스템
  • 캐시 처리 가능성
  • 온디맨드 코드 

 
 

RESTful API 의 장점

  • 확장성 - REST가 클라이언트-서버 상호 작용을 최적화하기 때문에 효율적으로 크기 조정이 가능하다. 
  • 유연성 - RESTful 웹 서비스는 완전한 클라이언트-서버 분리를 지원한다. 
  • 독립성 - REST API는 사용되는 기술과 독립적입니다. API 설계에 영향을 주지 않고 다양한 프로그래밍 언어로 클라이언트 및 서버 애플리케이션을 모두 작성할 수 있다.

 
 

RESTful API 클라이언트 요청에 포함된 것

  • 고유 리소스 식별자 - 일반적으로 URL을 사용하여 리소스 식별을 수행한다. 
  • 메서드 - GET(서버 리소스에 엑세스), POST(서버에 데이터 전송), PUT(서버의 기존 리소스 업데이트), DELETE(서버의 리소스 제거)
  • HTTP 헤더 - 클라이언트와 서버 간에 교환되는 메타데이터. 요청 및 응답 형식, 상태 등의 정보를 제공한다.
  • 데이터 (POST, PUT 등 메소드에)
  • 파라미터 - 수행해야 할 작업에 대한 자세한 정보를 서버에 제공

 
 

RESTful API 서버 응답에 포함된 것

  • 상태 표시줄 (200: 일반 성공, 201: POST 성공, 400: 잘못된요청, 404: 리소스를 찾을 수 없음)
  • 메시지 본문 (보통 JSON 형태) 
  • 헤더

 
 
 
 
 

728x90
반응형