밍부스02)아직...할만하다...

minji jeon·2022년 7월 14일
0

TIL_

목록 보기
20/61
post-thumbnail

다행이 어제 열일한 덕분에 내 담당페이지의 70%를 끝내고 편안한 마음으로 나머지 30%를 할수 있었다. 처음엔 너무 막막했는데 막상 해보니깐 나쁘지 않은 결과물이 나올거 같기도 하고 그렇다.

아쉬운점이 있다면, 더 많은 기능을 구현하고 싶었지만 시간적여유가 없어 아쉬웠다.
리액트랑 자바스크립트만하다 갑자기 풀스택 하니깐 뒤죽박죽에 리액트가 너무너무 그립지만

한꺼번에 너무 많은걸 배워서 당연히 어려운거라는 전공자의 위로에 조금더 힘을내 본다!!!

오늘공부시간

업로드중..

오늘배운거

  • payload에 id가 출력되지 않는오류
    payload에는 jwt토큰 정보를 넣어야하는데 애초에 id를 추가하지 않고, id를 찾았다. --> 애초에 payload에 id를 추가하지 않았었다(삭제됐을수도)

    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) 이렇게 뒤에 보내줘야 하는데 보내주지 않아서 발생


* 렌더링 과정을 수행하는 위치에 따라 CSR / SSR로 나뉜다.

1. 클라이언트사이드렌더링 CSR( ex)JINJA )

서버사이드는 클라이언트에서 서버를 렌더링하는 방식인데
HTML파일을 클라이언트 단에서 동적으로 구성
--> 빈 HTML파일 받고 JS,CSS등 추가파일 다시다운.
추가파일이 모두 다운완료시, 클라이언트쪽에서 HTML생성.
그 화면을 우리가 보게됨.
--> 사이트접속-->빈화면 -->완성된 화면이 띵 하고 나타남.

장점: 웹페이지가 처음로딩될때만 서버에서 파일을 받아옴.
그 이후부터는 클라이어트쪽에서 자체적으로 렌더링
--> 처음 로딩이후부터는 렌더링 속도가 빠르다.빠른사용자 경험제공
단점: 처음로딩시 로딩속도가 느리다.

2. 서버사이드렌더링 SSR은?
서버에서 완전한 HTML파일을 만들어 제공
서버쪽에서 동적으로 구성.
JS파일을 서버로부터다운
-->완전한 HTML파일 --> JS가 들어가있는 동적인 파일
새로운 요청이 생길때마다 이과정 반복
-->사이트접속-->화면이 잘보이나 클릭 혹은, 동적인 이미지들이 움직이지 않음--> 동적인 이미지가 나타남

장점: csr에 비해 첫 화면 로딩속도가 빠르다
검색엔진 최적화가 가능하다.
단점: 화면의 변화가 생길때마다 서버에서 새로운 html을 요청하고, 그파일 받아와서
다시 화면에 출력. -->화면전환시 깜박임문제 ,서버과부하

왜 알아야하는지?
렌더링: 개발자가 작성한 파일을 웹페이지로 그려주는 과정
--> 그 방식에 다라 웹페이지의 성능이 크게 달라짐.

어떤걸써야할까?
하나의 방식만 사용할필요는 없다.
페이지에 따라 두개를 모두 채택할수도 있다.
웹페이지 동적, 검색엔진이 없다면 CSR
정적이고, 페이지가 많으며, 검색엔진이 필수적이면 SSR방식을
주로 택한다.


* restful한 api

처음 rest api를 들었을때 눈에 보이는 그런 프로그램 무언가인줄 알았다.
하지만 아키텍처스타일.api를 만드는 가이드정도로 생각하면 된다.

restful :rest가 적용된시스템
rest api: rest가 적용된 api
예시) http://movies/avengers/genre
-->rest api를 적용하는 시스템은 restful이다
아래 사진과 같잉 설계된 api를 restful이라고 말할수 있다.

  • restful이 되기위한 조건이 있다.
    1.일관된 인터페이스
    2.클라이언트/서버
    3.비연결성:세션등 이전상황없이도 연결가능
    4.캐시가능:응답메시지는 저장후 재사용 가능
    5.계층화된시스템: 모듈화?
    -->이 조건들을 충족시켰을때 rest api라고 말하지만
    사실상 이상에 가깝다고 한다.

참고하면 좋은 영상
https://youtu.be/4DxHX95Lq2U
https://youtu.be/iOueE9AXDQQ

profile
은행을 뛰쳐나와 Deep Dive in javascript

0개의 댓글