TIL 230420
✅오늘 학습 Keyword
쿠키, 세션, JWT
✅오늘 겪은 문제
심화과정에 들어야할 강의를 먼저 들었다..
하지만 소켓이란 개념을 미리 알게되서 52려 이득!
나중에 다시 만나자..!
소켓? 네트워크에서 데이터를 송수신하기 위한 연결부
ex)TCP: 안정적 , UDP: 손실가능성있지만 빠른전송 속도
패킷? 콘센트 배선에 흐르는 전기와 비슷
소켓을 통해 송수신하는 덩어리 하나가 한개의 패킷
웹소켓? 실시간 웹서비스를 제공하기 위해 만들어진 소켓
ex) 새로고침하지 않아도 메시지 송수신, 예약 등 실시간으로 볼 수 있는
ex) 구글 sheet
socket.io? 자바스크립트로 웹소켓을 사용할때 가장 많이 사용되는 library
웹소켓이 지원되지 않는 브라우저인 경우 실시간 기능을 구현하게 해줌
즉 구현해놓은 'library'라 웹소켓이랑은 다르다!
실시간 구매 알림 구현
1. socket.io로 클라이언트와 서버가 소켓 연결
2. 클라이언트에서 사용자가 구매버튼을 누른 경우 서버로 '구매했어요'와 같은 데이터를 보내줘야만 접속중인 사용자들에게 알릴 수 있따.
3. 다른 사용자가 구매를 한 경우 서버에서 모든 클라이언트에게
"누군가가 구매를 했어요!"와 같은 데이터를 보내줘야 실시간 구매알림을 띄울수있음.
브라우저->클라이언트->ㅅㅓ버->접속중인 클라이언트들에게 알림
✅오늘 학습 내용 정리
-지난주차 핵심 개념정리
Q.Node.js는 프로그래밍 언어다?
노드 js는 js를 브라우저 없이 단독으로 실행할 수 있는 플랫폼이다
Q.NPM은 Node.js와 같은 프로그램이다?
npm은 노드에서 오픈소스 라이브러리를 쉽게 사용하기 위해 개발된 패키지 관리자 이다
Q.express는 서버라고 불러도된다?
express는 오픈소스 라이브러리다.
-이번주차 핵심 개념 정리
HTTP ; 데이터를 주고받을 때 사용되는 통신 규약(모두의 약소쿠)
쿠키; 서버에서 쿠키를 노릇노릇 구워서 RESPONSE에 담아 보내면 웹 브라우저는 받은 데이터를 그대로 저장한다.
브라우저가 쿠키를 가지고 있다면 REQ할때 항상 가지고 있는 쿠키 데이터를 포함해서 보낸다.
암호화가 없기에 클라이언트에서 마음대로 조작하기 쉬워 보안에 취약함
세션; 쿠키를 기반으로 구성된 기술
cookieParser 는 쿠키를 req.cookies로 만들어 주기만 하는 것이 아니라 쿠키를
더욱 손쉽게 사용할 수 있도록 해주는 라이브러리.
cookies를 배열화 시켜준다
JWT란? 개미 머리header: 어떤 암호화를 사용했는지, 가슴payload:배열 형식의 데이터저장 , 배signature: 토큰이 정상인지 확인하는 부분 세 부분으로 이뤄짐
JWT엔 민감한정보는 담으면 안됌
쿠키, 세션 = 데이터를 교환하고 관리하는 방식
JWT = 단순히 데이터를 표현하는 형식
JWT 왜쓰는데? JWT는 누구든지 내부에 들어있는 정보를 확인할 수 있고, 위변조 여부를 확인할 수 있는 특징을 가지고 있다.
'개발 > 차근차근 개발일지 TIL' 카테고리의 다른 글
TIL 230421 (0) | 2023.04.21 |
---|---|
쇼핑몰//회원가입-로그인 api 구현 참고용 총정리 (0) | 2023.04.21 |
TIL 230419_Node.js 입문3 (0) | 2023.04.19 |
WIL & TIL 230414_Node.js 입문2 (0) | 2023.04.18 |
TIL 230414_Node.js 입문1 (1) | 2023.04.14 |