minghxx.blog
  • REST API가 뭔가요?
    2024년 12월 17일 16시 39분 05초에 업로드 된 글입니다.
    작성자: 민발자
    728x90

    https://youtu.be/iOueE9AXDQQ?si=UoDTcjnTEA_cXNUz

     

     

    REST API(Representational State Transfer)

    웹기반 애플리케이션과 서버 간에 데이터를 교환하기 위해 사용되는 아키텍처 스타일

    클라이언트-서버 구조에서 리소스를 효율적으로 관리하고 전송하는 데 중점을 두며 HTTP 프로토콜을 기반으로 구현

    과거 SOAP 형식을 대체

     

    REST API와 SOAP의 차이점

    특징 REST SOAP
    프로토콜 HTTP 기반 HTTP, SMTP 등 다양한 프로토콜 지원
    데이터 포맷 JSON, XML 등 XML
    구조 간단하고 가볍다 복잡하고 무겁다
    유연성 유연하고 다양한 표준 지원 엄격한 규격

     

    핵심 개념

    1. 리소스
      • REST에서 모든 정보를 리소스로 간주
      • 리소스는 고유한 URI(Uniform Resource Identifier)를 통해 식별
    2. HTTP 메서드
      • GET: 리소스 조회
      • POST: 리소스 생성
      • PUT: 리소스 전체 수정
      • PATCH: 리소스 일부 수정
      • DELETE: 리소스 삭제
    3. 응답 상태 코드(HTTP Status Code)
      • 200 OK: 성공적으로 요청 처리
      • 201 Created: 리소스 생성 성공
      • 400 Bad Request: 잘못된 요청
      • 401 Unauthorized: 인증 실패
      • 403 Forbidden: 권한 없음
      • 404 Not Found: 리소스를 찾을 수 없음
      • 500 Internal Server Error: 서버 오류 발생
    4. URI 설계
      • 명사를 사용하고 복수형을 권장
      • 동사는 포함하지 않고 HTTP 메서드로 구분

     

    장점과 단점

    장점

    HTTP 기반으로 간단하고 직관적

    JSON을 활용하여 데이터 전송량이 적고 효율적

    다양한 플랫폼, 언어에서 지원

     

    단점

    REST는 상태를 저장하지 않기 때문에 클라이언트가 더 많은 데이터를 전송해야 할 수 있음

    보안 및 트랜잭션 처리는 SOAP보다 약함

    728x90
    댓글