다행이 어제 열일한 덕분에 내 담당페이지의 70%를 끝내고 편안한 마음으로 나머지 30%를 할수 있었다. 처음엔 너무 막막했는데 막상 해보니깐 나쁘지 않은 결과물이 나올거 같기도 하고 그렇다.
아쉬운점이 있다면, 더 많은 기능을 구현하고 싶었지만 시간적여유가 없어 아쉬웠다.
리액트랑 자바스크립트만하다 갑자기 풀스택 하니깐 뒤죽박죽에 리액트가 너무너무 그립지만
한꺼번에 너무 많은걸 배워서 당연히 어려운거라는 전공자의 위로에 조금더 힘을내 본다!!!
payload = { 'id': username_receive, 'exp': datetime.utcnow() + timedelta(seconds=60*60)}
user_info = db.users.find_one({"username": payload["id"]})
jinja2.exceptions.UndefinedError: 'user_info' is undefined user_info = db.users.find_one({"username": payload["id"]}) return render_template('index.html', user_info=user_info)
html쪽에서 jinja를 넣었는데 파이썬 쪽에서 변수설정을 해주지 않아서 발생
jinja템플릿에 대한 기본적인
return render_template('index.html', user_info=user_info) 이렇게 뒤에 보내줘야 하는데 보내주지 않아서 발생
1. 클라이언트사이드렌더링 CSR( ex)JINJA )
서버사이드는 클라이언트에서 서버를 렌더링하는 방식인데
HTML파일을 클라이언트 단에서 동적으로 구성
--> 빈 HTML파일 받고 JS,CSS등 추가파일 다시다운.
추가파일이 모두 다운완료시, 클라이언트쪽에서 HTML생성.
그 화면을 우리가 보게됨.
--> 사이트접속-->빈화면 -->완성된 화면이 띵 하고 나타남.
장점: 웹페이지가 처음로딩될때만 서버에서 파일을 받아옴.
그 이후부터는 클라이어트쪽에서 자체적으로 렌더링
--> 처음 로딩이후부터는 렌더링 속도가 빠르다.빠른사용자 경험제공
단점: 처음로딩시 로딩속도가 느리다.
2. 서버사이드렌더링 SSR은?
서버에서 완전한 HTML파일을 만들어 제공
서버쪽에서 동적으로 구성.
JS파일을 서버로부터다운
-->완전한 HTML파일 --> JS가 들어가있는 동적인 파일
새로운 요청이 생길때마다 이과정 반복
-->사이트접속-->화면이 잘보이나 클릭 혹은, 동적인 이미지들이 움직이지 않음--> 동적인 이미지가 나타남
장점: csr에 비해 첫 화면 로딩속도가 빠르다
검색엔진 최적화가 가능하다.
단점: 화면의 변화가 생길때마다 서버에서 새로운 html을 요청하고, 그파일 받아와서
다시 화면에 출력. -->화면전환시 깜박임문제 ,서버과부하
왜 알아야하는지?
렌더링: 개발자가 작성한 파일을 웹페이지로 그려주는 과정
--> 그 방식에 다라 웹페이지의 성능이 크게 달라짐.
어떤걸써야할까?
하나의 방식만 사용할필요는 없다.
페이지에 따라 두개를 모두 채택할수도 있다.
웹페이지 동적, 검색엔진이 없다면 CSR
정적이고, 페이지가 많으며, 검색엔진이 필수적이면 SSR방식을
주로 택한다.
처음 rest api를 들었을때 눈에 보이는 그런 프로그램 무언가인줄 알았다.
하지만 아키텍처스타일.api를 만드는 가이드정도로 생각하면 된다.
restful :rest가 적용된시스템
rest api: rest가 적용된 api
예시) http://movies/avengers/genre
-->rest api를 적용하는 시스템은 restful이다
아래 사진과 같잉 설계된 api를 restful이라고 말할수 있다.
참고하면 좋은 영상
https://youtu.be/4DxHX95Lq2U
https://youtu.be/iOueE9AXDQQ