웹 입문

History API와 라우팅

우리는 9장를 통해 Fetch API로 서버와 통신하고, 로컬 스토리지와 세션 스토리지로 클라이언트 측 데이터를 관리하는 방법을 학습했습니다. 이제 웹 애플리케이션의 중요한 사용자 경험 요소 중 하나인 내비게이션(Navigation)에 대해 다룰 차례입니다.

history.pushState()와 history.replaceStat...를 중심으로 History API와 라우팅의 판단 흐름을 읽습니다.

핵심 흐름

1

전통적인 웹 페이지 내비게이션의 한계

전통적인 웹 페이지는 태그를 클릭하거나, location.href를 변경하거나, 폼을 제출할 때마다 브라우저가 새로운 HTTP 요청을 서버로 보내고, 서버는 해당 URL에 맞는 새로운 HTML 파일을 응답합니다.

2

Single Page Application (SPA)

SPA는 이름 그대로 하나의 HTML 페이지 위에서 실행되는 웹 애플리케이션입니다.

3

History API: 브라우저 히스토리 조작

History API는 웹 브라우저의 세션 히스토리(방문 기록)를 자바스크립트로 조작할 수 있도록 해주는 웹 API입니다.

4

클라이언트-사이드 라우팅 구현의 원리

History API를 활용한 클라이언트-사이드 라우팅의 일반적인 원리는 다음과 같습니다.