๐โโ๏ธ1. Node.js๋ก 5๋ถ๋ง์ API ๋ง๋ค๊ธฐ
๐โโ๏ธ2. Node.js๋ก POST API ๋ง๋ค๊ธฐ
๐โโ๏ธ3. Node.js๋ก ๋ฐ์ดํฐ ์ ์ฅํ๊ธฐ
๐โโ๏ธ4. Node.js์ ์ ์ฅ๋ ๋ฐ์ดํฐ์ ์ธ๋ฑ์ค ๋ถ์ด๊ธฐ, ๋ฐ์ดํฐ ์ญ์ ํ๊ธฐ
๐โโ๏ธ5. Node.js๋ก ์ธ์
๋ฐฉ์ ๋ก๊ทธ์ธ ๊ตฌํํ๊ธฐ
์ด๋ฒ์๋ ๋ฏธ๋ค๋๋ ํ์๊ฐ์
๊ธฐ๋ฅ์ ๊ตฌํํด๋ณด์. ๋น๋ฐ๋ฒํธ ์ํธํ ํ๋ ๋ฐฉ๋ฒ๋ ํจ๊ป ์์๋ณด๊ฒ ๋ค. ์ํธํ์๋ ๋จ๋ฐฉํฅ ํด์ํจ์ bcrypt
๋ฅผ ์ฌ์ฉํ ์์ ์ด๋ค.
์ฌ์ ์ค๋น 1 : ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น
1 |
|
์ด๋ฒ์๋ ์๋ก ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํด์ผ ํ๋ค. bcrypt๋ฅผ ์ค์นํ์.
์ฌ์ ์ค๋น 2 : ์ค์นํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ require
1 |
|
์ด์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์ค์นํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด server.js ์๋จ์ ์ด๋ ๊ฒ ์ ์ธ์ ํด์ฃผ์ด์ผ ํ๋ค.
์ฌ์ ์ค๋น 3 : join.ejs ํ์ผ ๋ง๋ค๊ธฐ
์์ ์ด ๊ฑฐ๋ ๋๋ฌด ๋๊ฐ์์ ๊ทธ๋ฅ ์๋ตํด๋ ๋ ๊ฒ ๊ฐ์ง๋ง ์ผ๋จ ์ด๋ค. join.ejsํ์ผ์ ๋ง๋ค์ด์ /join์ผ๋ก id์ pw๋ฅผ ์ ์กํ ์ ์๋๋ก ํด์ฃผ์.
1 |
|
๊ฐ๋ฐ 1 : ๋ผ์ฐํฐ ์์ฑ & ํ์๊ฐ์ ๋ก์ง ๊ตฌํ
GET, POST ๋ฐฉ์ ํธ์ถ ๋ชจ๋ ์์ฑํด์ค๋ค. POST๋ก id์ pw๋ฅผ ๋ณด๋ผ ๋๋ ์๋์ ์ ์ฐจ๋ฅผ ๊ฑฐ์ณ์ผ ํ๋ค. ์์ด๋ ์ค๋ณต ์ฌ๋ถ ํ์ธ -> ๋น๋ฐ๋ฒํธ ์ํธํ -> DB์ ์ ์ฅ
. ์คํจํ์ ๋๋ ์๋ฌ ๋ฉ์์ง๋ฅผ ๋ฆฌํดํ๋๋ก ํ๋ค. bcrypt.hash(pw, 10)์ hash ๊ฐ๋๋ 10์ผ๋ก ์ค์ ํ๋๋ฐ ๋ณดํต 10-12 ์ ๋๋ก ์ค์ ํ๋ค.
1 |
|
๊ฐ๋ฐ 2 : ๋ก๊ทธ์ธ ์ ์ํธํ ๋ ๊ฐ ๋น๊ตํ๋๋ก ์์
๊ธฐ์กด ์ฝ๋์๋ ๋ฐ๋ก pw๋ฅผ ํ๋ฌธ ๋์กฐํ๋๋ก ๋์ด ์์์ง๋ง ์ด์ ์ํธํ ๋ ๊ฐ๋ผ๋ฆฌ ๋น๊ตํด์ผ ํ๋ค. ๋ฐ๋ผ์ ๋ก๊ทธ์ธ ๋ถ๋ถ ๊ตฌํ์์ ์์ฑํด๋์๋ ์ฝ๋๋ฅผ ์๋์ ๊ฐ์ด ์์ ํด์ฃผ์.
1 |
|
์ด์ ๋น๋ฐ๋ฒํธ๋ฅผ ์ํธํ ํด์ ํ์๊ฐ์ ์ ํ๊ณ , ์ํธํ ๋ ๊ฐ๋ผ๋ฆฌ ๋น๊ตํด์ ๋ก๊ทธ์ธ์ ์ํฌ ์ ์๋ค.