카테고리 없음

TIL 07072022 Node & JS 1

2cho6 2022. 7. 8. 15:34

Helmet - Express 사용시 헤더의 설정을 통하여 웹 취약점으로부터 서버를 보호해주는 보안 모듈


XSS(Cross Site Scripting) - 공격자가 상대방의 브라우저에 스크립트가 실행되도록 해 사용자의 세션을 가로채거나, 웹사이트를 변조하거나, 악의적 콘텐츠를 삽입하거나, 피싱 공격을 진행하는 것

 

ECMAScript로 표준화된 이후로 자바스크립트에는 string, number, boolean, null, undefined, object 6개의 데이터 타입이 있었다. 그리고 es6에서 새로운 데이터 타입 Symbol이 추가 되었다. symbol은 무엇이고 언제 사용하는 걸까?

Symbol - 변경 불가능한 원시 타입의 값, 다른 값과 중복되지 않는 고유한 값

 

moment.js -  날짜 관련 (node.js는 javascript 기반으로 기본적으로 시간 및 날짜 오브젝트인 Date를 가지고 있다. 하지만 Date 오브젝트를 사용하여 코드를 작성하면 가독성이 떨어지는 경우가 생겨 moment.js를 사용하는 경우가 있다)

 

morgan - nodeJS 에서 사용되는 로그 관리를 위한 미들웨어

 

passport - jwt인증을 쉽게 할 수 있도록 도와주는 역할

1. 설치

2. passport.js (설정파일) 작성

import

3. 옵션 설정

const jwtOptions = {
  jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(), // header에 bearer스키마에 담겨온 토큰 해석할 것
  secretOrKey: process.env.JWT_SECERT // 해당 복호화 방법사용
};

4. 복호화 성공시 호출할 함수

const jwtVerify = async (payload, done) => {
  done(null, payload);
};

5. passport 사용

 

compress - 데이터 압축 미들웨어