RESTful API 란
웹에서 서버와 클라이언트가 소통하는 규칙(설계 방식) 을 말합니다.
조금 더 쉽게 설명하면
->
"인터넷에서 약속된 방식으로 데이터를 주고 받는 것" 입니다
REST는
REpresentational State Transfer 의 약자입니다
자원의 상태를 표현 (Representation) 해서 클라이언트에게 전달(Transfer) 합니다.
Resource(자원)
웹에서 다루는 대상
예: 사용자, 게시글, 상품, 댓글 등
Representation(표현)
자원을 어떤 형태로 표현해서 전달하는지
보통 JSON, XML, HTML 형태로 전달합니다.
예시:
사용자 자원(Resource): 한 사람의 정보
표현(Representation): JSON으로 보낸다면
{ "id": 5, "name": "홍길동"}
State(상태)
자원이 현재 어떤 상태인지(내용, 값, 속성 등)
예:
게시글의 상태: 제목, 내용, 좋아요 수, 작성일 등
Transfer(전송)
그 표현(Representation)을 클라이언트<-> 서버 간에 주고 받는 것
웹 자원을 URL로 표현하고,
그 자원을 HTTP방식(GET, POST, PUT, DELETE 등) 으로 다루는 구조를 말합니다.
API
API는 서로 다른 프로그램끼리 소통하게 해주는 창구, 인터페이스입니다.
(클라이언트 -> 서버 호출, 앱 -> 서버 연결 등)
REST
서버가 "자원의 상태"를 특정 표현(JSON)으로 만들어 클라이언트에게 전달하는 방식
이것을 HTTP 기반 규칙으로 깔끔하고 일관성 있게 설계하자는 개념
->
자원의 상태를 JSON 같은 표현으로 만들어 클라이언트에게 전송하는 구조적 설계방식
그래서 RESTful API는
->
REST원칙을 잘 지켜서 만든 API ,
URL(경로) 과
HTTP 메서드를 활용해 자원을 직관적으로 조작하는 방식
RESTful API의 예시
GET /users -> 유저 목록 조회
POST /users -> 유저 생성
GET /users/10 -> ID=10 유저 조회
PUT /users/10 -> 유저 정보 수정
DELETE /users/10 -> 유저 삭제
------------------------------------------------------
URL은 자원(users)만 표현
행동은 HTTP메서드(GET, POST, PUT, DELETE)로 표현
규칙이 명확하고 일관성이 있습니다.
즉,
RESTful API 란
웹 자원을 URL로 표현하고,
HTTP 메서드로 다루는 규칙을 잘 지킨 API
'알게된것,복습한것,헷갈렸던것 정리' 카테고리의 다른 글
| API 테스트란? (0) | 2025.11.27 |
|---|---|
| JWT를 이용한 인증/인가 란? (0) | 2025.11.26 |
| LIKE와 =(등호) 차이 (0) | 2025.10.03 |
| 오버로딩(Overloading) 이란? (0) | 2025.09.27 |
| @NoArgsConstructor, @AllArgsConsturctor, @RequiredArgsConstructor 정리 (0) | 2025.09.11 |