일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- DOM
- 이벤트
- 모던 자바스크립트 Deep Dive
- 딥다이브
- 새 코드 받아오기
- 프로그래머스
- js pattern
- 자바스크립트 패턴
- mixin pattern
- js pattern
- const
- pr review
- 올림픽 통계 서비스 최적화
- 자바스크립트
- 커리어
- package management
- 블로그 서비스 최적화
- 이미지 갤러리 최적화
- 프론트엔드 성능 최적화 가이드
- Babel과 Webpack
- 학습내용정리
- 스코프
- 제너레이터와 async/await
- version management
- 브라우저의 렌더링 과정
- peerdependencies
- unique identifiers
- 자바스크립트 딥다이브
- middleware pattern
- 진행기록
- Today
- Total
목록BootCamp_Codestates/Sprint Review (4)
Dev Blog

TokeFunctions generateAccessToken: payload 와 AccessSecret, 만료일을 설정하여 AccessToken 을 만든다. generateRefreshToken: payload 와 RefreshSecret, 만료일을 설정하여 AccessToken 을 만든다. sendRefreshToken: res 와 refreshToken 을 받아 쿠키에 refreshToken 을 담아 user에게 보낸다. sendAccessToken: res 와 accessToken 을 받아 json 객체에 accessToken을 담아 user 에게 보낸다. resendAccessToken: accessToken 과 userinfo 를 user에게 보낸다. isAuthorized: req.header..

로그인 요청에, 데이터베이스에 해당 유저가 있으면 세션 객체에 유저 아이디를 저장하여 응답한다. 유저 정보를 요청하면, session 객체에 유저 아이디가 존재하는지 확인하고 있으면 해당 정보를 보내준다. 로그아웃 요청을 하면, session 객체 안에 userId 존재 확인하고, session 을 삭제한다. 특이사항 app.js 에서 express-session 모듈을 이용하여 쿠키를 설정해줄 수 있습니다.

가장 중요한 부분? 로그인 요청시 데이터 베이스에 해당 사용자 존재하면, 쿠키에 id 와 옵션을 담아 보내준다. 유저정보 요청시 쿠키에 id 가 존재할 경우, 해당하는 유저 정보를 보내준다. 로그아웃 요청시 cookie id 를 확인하고 있으면 해당 쿠키를 제거한다.

Queue stack hashTable linkedList BST graph tree Queue class Queue { constructor() { this.storage = {}; this.front = 0; this.rear = 0; } size() { return Object.keys(this.storage).length; //reference: return this.rear - this.front; } enqueue(element) { this.storage[this.rear] = element; this.rear++; } dequeue() { if(this.size() === 0){ this.front = this.rear; return undefined; } //reference: // if..