본문 바로가기
Learning-log/Spring & JPA

(스프링MVC1편-백엔드 웹 개발 핵심 기술) 1-(4) HTML, HTTP API, CSR, SSR

by why제곱 2023. 4. 30.

HTML, HTTP API, CSR, SSR

 

정적 리소스

  • 고정된 HTML파일, CSS, JS, 이미지, 영상 등 제공
  • 주로 웹 브라우저
  • 이미 생성된 리소스 파일들을 전달해서 제공

HTML 페이지

  • 동적으로 필요한 HTML 파일을 생성해서 전달
  • 웹 브라우저 : HTML 해석

HTTP API

  • HTML이 아니라 데이터를 전달
  • 주로 JSON 형식 사용
  • 다양한 시스템에서 호출
  • 데이터만 주고 받음, UI화면이 필요하면 클라이언트가 별도 처리
  • 앱, 웹 클라이언트, 서버to서버
    • 주문 서버 -> 결제 서버
    • 기업 간 데이터 통신

UI 클라이언트 접점

  • 앱 클라이언트(아이폰, 안드로이드, PC 앱)
  • 웹 브라우저에서 자바스크립트를 통한 HTTP API호출
  • React, Vue.js 같은 웹 클라이언트

 

SSR : 서버사이드 렌더링

  • 서버에서 최종 HTML을 생성해서 클라이언트에 전달
  • HTML을 만드는 과정은 서버에서 끝내고 클라이언트에 전달

CSR : 클라이언트 사이드 렌더링

  • HTML 결과를 자바스크립트를 사용해 웹 브라우저에서 동적으로 생성해 적용
    • C : html요청 
    • S : html에 내용은 없고 자바스크립트 링크 내려줌
    • C : 자바스크립트 요청
    • S : Javascript 클라이언트로직, HTML렌더링 코드 반환
    • C : HTTP API 데이터 요청
    • S : 데이터 반환
  • 동적인 화면에 주로 사용. 웹 환경을 앱처럼 필요한 부분부분 변경 가능
  • 구글지도, Gmail, 구글 캘린더
  • 관련 기술 : React, Vue.js => 웹 프론트엔드 개발자
  • 어디까지 알아야하는가 !! 
    • 백엔드 - 서버 사이드 렌더링 기술
      • JSP, 타임리프
      • 화면이 정적이고 복잡하지 않을 때 사용
      • 백엔드 개발자는 서버 사이드 렌더링 기술 필수
    • 웹 프론트엔드 - 클라이언트 사이드 렌더링 기술
      • React, Vue.js
      • 복잡하고 정적인 UI 사용
      • 웹 프론트엔드 개발자의 전문 분야