ruriruriya

[RESTful API] RESTful API란? (URL, Method, Message) 본문

Python Flask

[RESTful API] RESTful API란? (URL, Method, Message)

루리야ㅑ 2023. 12. 6. 11:18
반응형

RESTful API는 Representational State Transfer(REST) 아키텍처 스타일을 따르는 웹 서비스를 위한 API이다. REST는 네트워크 기반의 소프트웨어 아키텍처를 설계하기 위한 원칙들을 정의하며, HTTP 프로토콜을 통해 자원을 관리하고 상태를 전송하는 방법을 제공한다.

 

1.자원(Resource)

각 자원은 URI를 통해 표현된다.

URL이라고도 한다.

URI(URL) 구성 명칭

2. HTTP 메소드 활용

RESTful API는 HTTP 메소드(GET, POST, PUT, DELETE 등)를 사용하여 자원에 대한 행위를 정의한다. 

  • GET : 읽어오기
  • POST : 추가하기
  • PUT :  수정하기, 업데이트하기
  • DELETE : 삭제하기

3.표현(Message)

클라이언트와 서버 간에 전송되는 데이터 표현은 보통 JSON, XML 등의 형식으로 이루어진다.

JSON의 형식

데이터 타입은 객체(Object)와 배열(Array)을 사용한다.

  • 객체(Object): 중괄호 {}로 표현되며, key-value 쌍의 집합이다. 각 쌍은 key와 value로 이루어져 있습니다. key는 문자열이어야 하며, value는 다양한 데이터 타입이 될 수 있다.
  • 배열(Array): 대괄호 []로 표현되며, 값의 목록을 가집니다. 각 값은 쉼표로 구분된다.
{
  "person": {
    "name": "Alice",
    "age": 28,
    "isStudent": true,
    "hobbies": ["reading", "painting"]
  }
}

 

요청(Request)와 응답(Response)

클라이언트가 서버에 요청을 하면 서버는 응답을 한다.

요청(Request) 하기 위한 세팅 항목

Request
URL http://example.com
Method POST
Headers User-Agent
Body Data

Request 헤더와 바디에 들어가는 내용 예시

 

HTTP Status Codes

Response 받아올 때 HTTP Status Codes 참고 한다.

https://developer.mozilla.org/en-US/docs/Web/HTTP/Status

 

HTTP response status codes - HTTP | MDN

HTTP response status codes indicate whether a specific HTTP request has been successfully completed. Responses are grouped in five classes:

developer.mozilla.org

 

Response 메세지도 Json 형식으로 받는다.

반응형