notes
44장. REST API
모던 JS Deep Dive — REST API의 자원·HTTP 메서드·응답 설계 핵심 정리.
참고: 이웅모 《모던 자바스크립트 Deep Dive》 44장 · [MDN HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP) / REST
REST는 자원을 URI로, 행위를 HTTP 메서드로 표현하는 아키텍처 스타일. 프론트는 엔드포인트·상태코드·멱등성을 알고 호출한다.
// GET /users/1
// POST /users
// PATCH /users/1
// DELETE /users/1
자원과 표현
JSON이 흔한 표현. Content-Type, Accept.
메서드 의미
GET 안전·멱등, PUT/PATCH 갱신, POST 생성, DELETE 삭제. 캐시·재시도 정책이 달라짐.
상태 코드
2xx 성공, 4xx 클라, 5xx 서버. UI 메시지 매핑.
함정
- GET에 바디/변이
- 에러 본문 포맷 불일치
- 버전/인증 헤더 누락
실무
- 클라이언트 API 모듈 한곳
- idempotency key (결제 등)
- OpenAPI 타입 공유
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.
연습·복습 체크리스트
- [ ] 핵심 표 다시 그리기
- [ ] 함정 예제 콘솔 재현
- [ ] MDN 북마크
- [ ] 실무 코드 검색·리팩터 후보
- [ ] 앞뒤 장 한 줄 연결
일기 보강
책을 덮고 한 줄 정의를 내 말로 다시 썼다. 예제 세 개를 치면 문제 유형이 보인다. 원문 복붙 없이 “왜”만 남겼다.
웹·스펙 메모
MDN 용어를 디버깅 언어로 번역해 적는다. 팀 컨벤션 초안으로 표를 제안한다.
실무 적용
PR에 체크리스트, 버그 리포트에 재현+기대/실제.