- 서버가 클라이언트에게 응답을 보내면 브라우저는 자바스크립트를 받아 실행하고 화면에 표시한다.
- 최초에 1번 서버에서 전체 페이지를 로딩하고 이후에는 사용자의 요청이 올때마다 리소스를 서버에서 제공 후 클라이언트가 해석하고 렌더링하는 방식이다.
- 언제 새로운 데이터를 불러올 지 직접 구현한다.
- 필요한 부분만 다시 읽어오기 때문에 트래픽을 감소시킨다.
- 최초 로딩 시 모든 리소스를 받아와야 하기 때문에 초기 로딩 속도가 느리다.
- 리소스를 파싱하고 렌더링하기 때문에 느리다.
- 사용자의 정보를 쿠키나 로컬스토리지에 저장하기 때문에 XSS 공격에 취약하다.
- 전통적인 웹 어플리케이션 방식
- 요청할 때마다 브라우저 새로고침이 발생해 서버에 새로운 페이지에 대한 요청을 하는 방식
- 서버가 클라이언트에게 렌더링된 HTML을 전달하면 브라우저가 화면에 표시한다.
- 사용자의 정보를 서버에 저장한다.
- 초기 속도가 빠르다.
- HTML에 대한 정보가 처음부터 포함되어있기 때문에 모든 검색엔진에 대한 SEO(검색 엔진 최적화)가 가능하다.
- 매번 서버에서 처리하기 때문에 서버의 부담이 크다.