1. ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๋ชจ๋ ๊ฒ์ ํ ์ ์๋ค. Browser ํ๊ฒฝ Server ํ๊ฒฝ ๋๋ง๋ฆฌ ํ ๋ผ๋ฅผ ์ก์ ์ ์๋ค. ์ด ์ธ์์๋ ์ ๋ง ๋ง์ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๋ค์ด ์์.. ๋น ๋ฅด๊ฒ ๋ค๋ฅธ ์ธ์ด์ ๋น๊ตํ์ฌ ๋น ๋ฅด๊ฒ ๊ตฌํํ ์ ์๋ค๋ ์ฅ์ ๋ ์๊ธฐ์ ์คํํธ์ ์์ ๋ง์ด๋ค ์ฌ์ฉํ๋ค. 2. 50% ๋๋ ๊ฐ๋ฐ์๋ค์ด Node.js ๋ฅผ ์ฌ์ฉํ ์์๋ค๋ ์ค๋ฌธ์กฐ์ฌ ๊ฒฐ๊ณผ๊ฐ ์๋ค. 3. Node.js๋ฅผ ์ฌ์ฉํ๋ ํฐ ๊ธฐ์
Auth ์ ์ฉ ์์ ๋์ ์ด๊ธฐ ์ ์ ํ์๊ฐ์ bcript๋ฅผ ์ด์ฉํ์ฌ ์ํธํ(Hash)๋ ์ํธ์ ์์ด๋๋ฅผ userRepository์ ์ ์ฅ ์ ์ ๋ก๊ทธ์ธ bcript๋ฅผ ์ด์ฉํ์ฌ ์ํธํ(Hash)๋ ์ํธ๋ฅผ userRepository์ ์ ์ฅ jwt ํ ํฐ ์์ฑํ์ฌ ์ฌ์ฉ์(๋ธ๋ผ์ฐ์ )์๊ฒ ๋ณด๋ด์ค ๋ก๊ทธ์ธํ ๋๋ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๋น๋ฐ๋ฒํธ & ์ํธํ๋ ๋น๋ฐ๋ฒํธ๊ฐ ๋์ผํ์ง brypt compare๋ก ๊ฒ์ฆ ์ฑ๊ณต์ ์ผ๋ก ๋ก๊ทธ์ธ์ด ๋๋ฉด jwt ํ ํฐ์ ๋ณด๋ด์ค ๋ก๊ทธ์ธํ ์ฌ๋์ด๋ผ๋ฉด header์ authlization์ ํค๋์ ๋ฃ์ด์ ๋ณด๋ ๋ฏธ๋ค์จ์ด์์ ํญ์ ๋ก๊ทธ์ธ์ด ํ์ํ ์๋น์ค๋ผ๋ฉด, ๋ฏธ๋ค์จ์ด๋ก ํค๋๊ฐ ์กด์ฌํ๋์ง & ์ฐ๋ฆฌ๊ฐ ๋ฐํํ ํ ํฐ์ด ๋ง๋์ง, ์ ํจํ์ง ํ์ธ. ์ฌ์ฉ์๊ฐ ์ ํจํ๋ค๋ฉด ์ฌ์ฉ์ฅ์ ์์ด๋๋ฅผ req object ์ user.id๋ฅผ ์ ์ฅํด๋์. -Auth ์ธ์ฆ์๋ฃ ์ด๋ ์ ์ฅํ userid ์ ๋ณด๋ฅผ ์ด์ฉํ์ฌ, Auth ๋ค์ ๋ฏธ๋ค์จ์ด์์ ์ ์ ์ ๋ณด๋ฅผ ์
[Node.js]Validation ์ ํจ์ฑ ๊ฒ์ฌ๋? ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ ํน์ ํ ์์ฒญ์ด๋ ๋๋ ๋ฆฌ์์ค๋ฅผ ๋ง๋ค๊ธฐ ์ํด body๋ก ๋ณด๋ด๋ ๋ฐ์ดํฐ๋ค์ด ์ ํจํ์ง, ์ ํํ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๊ณ ์๋์ง ํ์ธํ๋ ๊ณผ์ ์ด๋ค. ๋ณดํต ์คํค๋ง๊ฐ ํ์ ๋ DB๋ฅผ ์ด์ฉํ๋ฉด ์ด๋ค ํน์ ํ ํ๋๊ฐ ์ด๋ค ๋ฐ์ดํฐ ํ์ ์ธ์ง ์ ํด์ ธ ์๊ธฐ ๋๋ฌธ์, ์ด๋ค ์์ฒญ์ ํ์ํ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ์ ์์ ์ผ๋ก ์๋์ง, Validation ์ DB์์ ํด์ค ์ ์๋ค. But, DB์์ Validation ์ํ๊ธฐ ์ ๊น์ง ์ ํ ์ ํจ์ฑ ๊ฒ์ฆ์ ํ์ง ์๋๊ฒ์ ์๋ฒ ๋.. ๊ทธ๋์ ์๋ฒ์์ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ํ ์ ์๋ค. ์๋ฒ์์๋ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ๋นจ๋ฆฌํ๋ฉด ํ ์๋ก ์ข๋ค. ๋น์ฉ์ ์ค์ด๊ธฐ ์ํด ์ ํจ์ฑ ๊ฒ์ฌ๋ ๋๋๋ก ๋นจ๋ฆฌํ๋ ๊ฒ์ด ์ข๋ค.(ํ์) ๋ฌผ๋ก ํด๋ผ์ด์ธํธ ์ธก์์๋ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ํ ์๋ ์๋ค. (์ต์ ) ๊ทธ๋ ๋ค๋ฉด Node Express์์ ์ด๋ป๊ฒ ์ ํจ์ฑ ๊ฒ์ฌ๋ฅผ ํ ์ ์์๊น Express Validate์ฌ์ฉํ์ ๋