μΉκ°λ° - 4 ν¨μ€μλ ν΄μ±/λ‘κ·ΈμΈ/λ‘κ·Έμμ
μμ λ μ¬ν
- 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λ§ νλ©΄ λλ€!!