출처: 이웅모 《모던 자바스크립트 Deep Dive》 44장 · 본인 말로 정리
REST는 HTTP를 리소스에 대한 상태 전송으로 쓰자는 아키텍처. URL은 자원, 메서드는 행위, 응답은 표현(주로 JSON).
| 요소 | 예 |
|---|---|
| 리소스 | /users, /users/1 |
| 메서드 | GET 조회, POST 생성, PUT 전체교체, PATCH 부분수정, DELETE 삭제 |
| 상태 코드 | 200/201/204, 400/401/404, 500… |
JSON Server로 GET/POST/PUT/PATCH/DELETE를 빠르게 체감.
fetch('/todos').then(r => r.json());
fetch('/todos', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ title: '공부', done: false }),
});
PUT ≈ 전체 교체, PATCH ≈ 일부 수정. GET/PUT/DELETE는 idempotent에 가깝고 POST는 다름.