웹페이지 로드 과정

브라우저에서 특정 페이지로 이동할 때, 웹 페이지를 로드하는 과정은 W3C Spec을 따른다.

스크린샷 2022-04-17 오후 9.05.35.png

1. Prompt for unload


현재 페이지에서 다른 페이지로 이동할 때 발생하는 이벤트(뒤로가기 버튼이나 링크를 눌러 다른 도메인의 페이지로 이동할 경우 발생)

웹 브라우저 내 현재 문서에서 다른 문서로 벗어나는(이동하는) 단계로 unload(window: beforeunload 이벤트)를 적용할 수 있다. beforeunload 이벤트를 사용하면 사용자가 페이지를 떠날 때 정말로 떠날 것인지 묻는 확인 대화상자를 표시할 수 있다. 사용자가 확인을 누를 경우 브라우저는 새로운 페이지로 탐색하고, 취소할 경우 현재페이지에 머무른다.

2. Redirect


브라우저의 URL 요청에 대해, 서버에서 다른 URL로 요청할 것을 지시하는 것을 말한다.

예를 들어, 브라우저에서 A라는 URL을 웹 서버에 요청했을 때 서버는 B로 재요청할 것을 지시할 수 있다. Redirect는 HTTP 표준으로 정의되어 있다.

최초 요청을 받은 웹서버는 HTTP 응답 상태코드 302를 보내고, 헤더필드 내 Location에 Redirect 되어야할 URL 주소를 반환한다. (optional 이라서 발생하지 않을 수도 있음)

3. AppCache


서버에서 데이터를 불러오기 전 저장된 데이터가 있는지 확인하는 단계

사용자가 앱을 실행하거나 웹사이트를 처음으로 방문한 후, 다음번의 재방문시 빠르게 정보를 수집하거나 실행할 수 있도록 일부 임시 저장된 데이터가 캐시데이터이다. 만일 캐시되어있다면, 네트워크 통신없이 바로 꺼내어 사용하면 된다. 이러한 과정을 통해 속도를 증가시킬 수 있다.

4. DNS(Domain Name Server)