01. RESTful API
RESTful API(Representational State Transfer API)는 웹 서비스 설계 아키텍처의 일종으로, HTTP 프로토콜을 통해 자원을 주고받는 방식입니다. REST는 클라이언트와 서버 간의 상호작용을 단순화하고 표준화된 인터페이스를 제공하기 때문에 널리 사용됩니다. RESTful API의 주요 특징은 다음과 같습니다:
- 자원(Resource): URL을 통해 자원에 접근하며, 자원은 명사로 표현됩니다. 예를 들어, https://api.example.com/users는 사용자 자원에 접근하는 엔드포인트가 됩니다.
- HTTP 메서드: REST는 HTTP 메서드를 사용하여 CRUD(Create, Read, Update, Delete) 작업을 수행합니다.
- GET: 자원을 조회
- POST: 자원을 생성
- PUT: 자원을 수정
- DELETE: 자원을 삭제
- 무상태성(Stateless): RESTful API는 무상태성을 가지며, 서버는 클라이언트의 이전 요청 상태를 유지하지 않습니다. 각 요청은 독립적이며, 필요한 모든 정보는 요청에 포함되어야 합니다.
- 계층 구조(Layered System): 클라이언트는 보통 직접 서버에 연결되지 않고, 프록시나 게이트웨이를 통해 간접적으로 연결될 수 있습니다.
- 캐싱(Caching): HTTP의 캐싱 기능을 활용해 응답을 캐시하여 성능을 향상시킬 수 있습니다.
02. JSON (JavaScript Object Notation)
JSON은 데이터를 구조화하고 교환하기 위한 경량 데이터 형식입니다. 사람과 기계 모두가 읽기 쉽게 설계되었으며, 주로 웹 애플리케이션에서 서버와 클라이언트 간의 데이터 교환에 사용됩니다. JSON의 주요 특징은 다음과 같습니다:
- 경량 데이터 형식: 텍스트 기반의 데이터 표현 방식으로, XML에 비해 간결하고 쉽게 읽을 수 있습니다.
- 데이터 구조: JSON은 중첩된 키-값 쌍과 배열을 포함할 수 있습니다. 이 구조는 프로그래밍 언어의 객체와 배열과 매우 유사합니다.
- 언어 독립성: JSON은 여러 프로그래밍 언어에서 쉽게 파싱하고 생성할 수 있으며, 다양한 라이브러리와 도구에서 지원됩니다.
- 유니코드 지원: JSON은 유니코드를 지원하므로 전 세계 다양한 언어의 데이터를 표현할 수 있습니다.
'Daily note' 카테고리의 다른 글
Today I Learned(TIL)-52 (1) | 2024.09.06 |
---|---|
Today I Learned(TIL)-51(오답노트) (1) | 2024.09.04 |
Today I Learned(TIL)-49 (1) | 2024.09.03 |
Today I Learned(TIL)-48 (0) | 2024.09.01 |
Today I Learned(TIL)-47 (2) | 2024.08.30 |