์์ ๋ ์ฌํญ
- Passport.js๋ฅผ ์ฌ์ฉํ ํ์๊ฐ์ ๋ฐ ๋ก๊ทธ์ธ/๋ก๊ทธ์์
- ๋น๋ฐ๋ฒํธ๋ฅผ hash, salt ๊ฐ์ผ๋ก ์ ์ฅํจ
- ๋ก๊ทธ์ธ ์ธ์ ์ ์ง
- ๋ก๊ทธ์ธ ์ํ ๋ค๋น๊ฒ์ด์ ๋ฐ์ ํ์
- errorPage UI ์์
์ด๋ค.
์ฌ์ค Passport.js๋ฅผ ์ฌ์ฉํ๋๊น ์ธ์ ์ ์ง๋ ๋ก๊ทธ์์ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ๋ ์ด๋ ต์ง ์์๋ค.
์๋ฌดํผ ๊ทธ๋์ ์์ ๋ ์ฝ๋๋ค์ ์ด๋ ๋ค.
User ๋ชจ๋ธ์ด Passport.js๋ฅผ ํ๋ฌ๊ทธ์ธ์ผ๋ก ์ฌ์ฉํ๊ณ ์์ด Passport.js์์ ์ ๊ณตํ๋ register ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ ํ์๊ฐ์ ๋ก์ง์ ๊ตฌํํ๋ค. (์ฌ๊ธฐ์ ๋ญ๊ฐ ์๋ชป๋๋์ง ์ ์๋๋ ์ ์ด ์๋๋ฐ ๋ฐ์์ ๋ค์ ์ค๋ช ํ๊ฒ ์)
์ํผ ์ ๋ ๊ฒ ํ์๊ฐ์ ์ ์งํํ๋ฉด, ํจ์ค์๋ ๊ฐ์ ๋ํ์ฌ ์ํธ์ ํด์ฑ๊ฐ์ด ์๋์ผ๋ก ์ ์ฅ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ก๊ทธ์ธ/๋ก๊ทธ์์ ๋ก์ง์ด๋ค.
์ฌ๊ธฐ์๋ Passport.js๋ฅผ ์ฌ์ฉํ์ฌ ๋ก๊ทธ์ธ๊ณผ ๋ก๊ทธ์์์ ๊ฐ๋จํ๊ฒ ์ฝ๋ ๋ช์ค๋ก ๊ตฌํํ๋ค.
๋ก๊ทธ์ธ ๋ก๊ทธ์์ ๊ธฐ๋ฅ์ ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด์ ๋ก๊ทธ์ธ์ด ์ ์ง๋๊ณ ์์์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด์ ๋ค๋น๊ฒ์ด์ ๋ฐ๋ฅผ ์์ ํ์๋ค.
๊ทธ ์ ์ ํ์ฌ ์ธ์ ์ ์๋ ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ๋ฐ์์ค๊ธฐ ์ํด์ main.js์ ๋ฏธ๋ค์จ์ด ํจ์์ ๋ณ์๋ฅผ ์ ์ํ๋ค.
์ด๋ ๊ฒ Passport.js์์ ์ ๊ณตํ๋ isAuthenticated() ๋ฉ์๋๋ฅผ ์ด์ฉํ์ฌ ๋ก๊ทธ์ธ์ด ๋์ด์๋์ง ์๋์ง true/false๊ฐ์ loggedIn ๋ณ์์ ์ ์ฅํ๊ณ , ๋ก๊ทธ์ธ์ด ๋์ด์๋ค๋ฉด ๋ก๊ทธ์ธ ๋ ์ฌ์ฉ์์ ์ ๋ณด๋ฅผ currentUser ๋ณ์์ ์ ์ฅํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๊ฑด ์ด์ flashMessages ์ฒ๋ผ ๋ทฐ์์ ๊ฐ๋ค์ธ ์ ์๊ฒ ๋๋ค.
๊ทธ๋์ layout.ejs๋ฅผ ์๋์ ๊ฐ์ด ์์ ํด์ ๋ก๊ทธ์ธ์ด ์๋์ด์์ ๋๋ login / register ๊ฐ ๋จ๊ฒ ํ๊ณ ,
๋ก๊ทธ์ธ์ด ๋์ด์์ผ๋ฉด ํ์ฌ ๋ก๊ทธ์ธ ๋ ์ฌ์ฉ์์ ์ด๋ฆ์ ๋ณด์ฌ์ฃผ๊ณ ๋ก๊ทธ์์ํ ์ ์๋๋ก ๋ฉ๋ด๋ฅผ ๋์์ค๋ค.
๊ทธ๋ฆฌ๊ณ ์์ ๋ ์๋ฌํ์ด์ง๋ ์ด๋ ๊ฒ ์๊ฒผ๋ค.
์์ ๋ฐ ๊ตฌํํ ๊ธฐ๋ฅ์ ์คํ์์์ด๋ค.
๊ทธ๋ฆฌ๊ณ ์ด์ ๊ณ ์น์ง ๋ชปํ ๋ฌธ์ ๋, ํ์๊ฐ์ ์ ํ ๋ DB์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅ๋ ๊ฐ์ ์ ์ฅ์ด ๋๋๋ฐ
ํ์๊ฐ์ ์ด ์๋ฃ๋๊ณ ๋์ index ํ์ด์ง๋ก ๋ฆฌ๋ค์ด๋ ์ ์ด ์ด๋ค์ง์ง ์๋๋ค. ๊ทธ๋์ if๋ฌธ๊ณผ else๋ฌธ ๊ฐ๊ฐ์ ์ฝ๋์ ์ฝ์ ๋ก๊ทธ๋ฅผ ์ฐ์ด๋ดค๋๋ฐ
๋ณด๋ค์ํผ if๋ฌธ๊ณผ else๋ฌธ ๋๋ค์ ๋ค์ด๊ฐ๋ ๊ฒ ๊ฐ๋ค. ์ ์ด๋ฌ๋์ง ๋ชจ๋ฅด๊ฒ ๋ค. ์ด๊ฑฐ ๊ณ ์น๊ณ , Validator๊ฐ ์๋ํ๊ฒ ํ๋ฉด
ํ์๊ฐ์ /๋ก๊ทธ์ธ/๋ก๊ทธ์์ ๊ธฐ๋ฅ์ ์๋ฒฝํ๊ฒ ๊ตฌํ์ด ๋๋๋ค. ํ...
(+ 2021.11.10 17:30 ์์ )
์๊ฐ๋ณด๋ค ํฐ๋ฌธ์ ๊ฐ ์๋ ๋ค...ใ ์ญ์ ๋งจ๋ ์ฝ๋ฉํ ๋ ์์ํ ์ค์ ๋๋ฌธ์ ์ด๋ ๊ฒ ๋๋ค.
์ํผ ๋ฌธ์ ๋ ๊ฑ main.js ์์ register์ ๋งคํํ ๋ redirectView ์ก์ ๊น์ง ๋งคํ์ ์ํด์ค์ ๊ทธ๋ฐ๊ฑฐ์๋ค...^^
์ด๋ ๊ฒ ์ถ๊ฐํด์ฃผ๊ณ ํ์๊ฐ์ ๋ค์ ์งํํด๋ณด๋๊น
์๋๋คใ ใ ใ
์ด์ Validator๋ง ํ๋ฉด ๋๋ค!!
'๐ Node.js web development' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์น๊ฐ๋ฐ - 6 ๋ง์ดํ์ด์ง, ํ์์ ๋ณด ์์ (0) | 2021.11.11 |
---|---|
์น๊ฐ๋ฐ - 5 Validator ์์ (0) | 2021.11.11 |
์น๊ฐ๋ฐ - 3 ์ฌ์ฉ์ ๋ก๊ทธ์ธ (0) | 2021.11.08 |
์น๊ฐ๋ฐ - 2 ์ฌ์ฉ์ register, db ์ ์ฅ (0) | 2021.11.05 |
์น๊ฐ๋ฐ - 1 ๊ฐ์, Git hub์ฐ๊ฒฐ (0) | 2021.11.03 |
๋๊ธ