반응형
00. SW 첫날 프로젝트를 진행합니다.
첫 프로젝트의 미션은 바로 아래 기능이 들어간 미니 프로젝트를 진행하는 것이다.
- Jinja2 템플릿 엔진을 이용한 서버사이드 렌더링
- 로그인 기능
01. 렌더링이란?
서버로부터 요청해서 받은 내용을 브라우저 화면에 표시해주는 것을 표현한다.
02. 서버사이드렌더링이란?(SSR, Server Side Rendering)
클라이언트에서 모든 것을 처리하지 않고, 웹사이트에 접속하면 서버에서 필요한 데이터를 모두 가져와서 HTML 파일을 만들고, 만들어진 HTML과 HTML 파일을 동적으로 제어할 수 있는 소스코드를 클라이언트에게 보내는 것을 서버사이드렌더링이라고 한다.
서버사이드 렌더링은 페이지를 이동할 때 마다 새로운 페이지를 요청한다. 모든 템플릿은 서버 연산을 통해서 렌더링하고 완성된 페이지형태로 응답한다.
03. 그럼 왜 서버사이드렌더링을 사용해야할까?
- 검색엔진 최적화(SEO) 가능 : 서버사이드렌더링을 통해 얻을 수 있는 가장 큰 장점
- 페이지 로딩이 빨라진다.
- 모든 컨텐츠가 HTML에 담겨있기 때문에 효율적인 코딩이 가능하다.
04. 서버사이드렌더링의 단점은 뭘까?
-Blinking Issue(페이지 이동시 화면이 깜빡 거린다.)
-서버 렌더링에 따른 부하가 발생된다.
-TTV와 TVI의 공백시간(서버 렌더링에 따른 부하가 발생)
05. 서버사이드렌더링을 python에서 경험해보자
python HTML에서 작성한 파이썬 코드를 서버 단에서 render_template라이브러리를 이용해 렌더링한다.
서버에서 보낸 렌더링을 변수가 받아 사용할 수 있다.
https://jinja.palletsprojects.com/en/3.1.x/
Jinja — Jinja Documentation (3.1.x)
jinja.palletsprojects.com
@app.route('/')
def home():
user = ['name':'빵야']
return render_template('board/board.html', id=user_info["name"])
반응형
'회고록' 카테고리의 다른 글
👩🏼💻TIL : 8. 스택이란? (0) | 2022.10.01 |
---|---|
👩🏼💻TIL : 7. 재귀함수(Recursion) (0) | 2022.09.26 |
👩🏼💻TIL : 5. MongoDB를 써보자 (0) | 2022.08.17 |
👩🏼💻TIL : 4. Web Scraping vs Web Crawling: What’s the Difference? (0) | 2022.08.16 |
👩🏼💻TIL : 3. 서버-클라이언트 통신 (0) | 2022.08.03 |
댓글