본문 바로가기
서버/Node.js

[Node.js] 계정, 로그인 관련 패키지 (passport, express-session, connect-flash, async)

by 느링 2018. 9. 1.

passport

node.js에서 계정관리를 할 때 가장 많이 쓰이는 package입니다.

300개 이상의 인증방식을 지원한다고 웹사이트에서 광고를 하고 있습니다.

각각의 인증방식을 strategy라고 부르는데, 

페이스북을 이용해서 로그인하는 것을 facebook strategy, 트위터를 써서 로그인하는 방식을 twitter strategy 이런 식입니다.

웹 사이트에 들어가면 회원가입을 하지 않고 페이스북 버튼을 누르면 페이스북 로그인 창이 뜨고 정보를 입력하면

가입되는 방식같은 것들입니다.

사이트에 직접 가입하는 방법은 local strategy하고 합니다.

# local에서 로그인을 확인하고 인증하는 시스템을 만들 때

   passport자체에는 로컬을 인증하는 로직이 없기 때문에 passport-local을 따로 설치해주어야합니다.


express-session

로그인이 되고 나면 로그아웃을 하기 전까지 웹 사이트는 해당 유저가 로그인이 되어 있다는 것을 알고 있습니다.

또한 해당 유저별로 데이터를 따로 관리할 수도 있습니다. 

이 정보가 session으로 저장되기 때문인데, 이를 도와주는 패키지입니다.


connect-flash

session에 자료를 flash로 저장하게 해주는 패키지입니다.

flash로 저장된 정보는 한번 읽어오면 지워집니다.

주로 서버에서 유저에게 메세지를 날리는 용도로 많이 쓰입니다.


async(비동기)

node.js는 기본적으로 콜백을 사용해서 async(비동기)로 동작합니다.

시간이 걸리는 부분에서 마냥 기다리지 않고 다음 코드를 먼저 진행하여 대기시간을 줄이는 것입니다.

하지만 시간이 걸린다고 무조건 넘어가는 것이 아니라 비동기를 사용하고 있는 함수에서만 이렇습니다.

내가 쓴 코드가 다음줄로 넘어가면 어떡하나 걱정할 필요는 없습니다.

'서버 > Node.js' 카테고리의 다른 글

[Node.js] EJS 파일읽기  (1) 2018.08.22
[Node.js] static (정적) 폴더 세팅  (0) 2018.08.22
[Node.js] fs.readFile()  (0) 2018.08.13