Logout > logout route๋ฅผ ๋ง๋ ๋ค. ๋ก๊ทธ์์ํ๋ ค๋ ์ ์ ๋ฅผ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ฐพ๋๋ค. ํด๋น ์ ์ ์ ํ ํฐ์ ์ง์ด๋ค. > ํ ํฐ์ ์ง์ฐ๋ ์ด์ > auth ๊ธฐ๋ฅ ์ค ์ธ์ฆ์ ํ ๋ ํด๋ผ์ด์ธํธ์ ์๋ ์ฟ ํค ์์ ํ ํฐ์ ๊ฐ์ ธ์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์๋ ํ ํฐ๊ณผ ๊ฐ์ ์ง ํ
Authentication ์ด๋? ์ ํ์ํ ๊น? > ๊ถํ์ด๋ผ๋ ๊ธฐ๋ฅ์ด ์ ํ์ํ ๊น? > ์ด๋ค ์ฌ์ดํธ๋ฅผ ๋ค์ด๊ฐ์ ๋ ํ์ด์ง๋ง๋ค ์ ๊ทผ ๊ถํ์ ๋ค๋ฅด๊ฒ ์ค์ผ๋๋ค. > ์๋ฅผ ๋ค์ด์ ํ์ด์ง๋ฅผ ์ด๋ ํ ๋ ๋ง๋ค ๋ก๊ทธ์ธ์ด ๋์ด ์๋ ์ง? ์ ๋์ด์๋์ง๋ฅผ ์ฒดํฌํด์ผ ๋๋ค. ๊ธ์ ์์ฑํ๊ฑฐ
DB์์ ์์ฒญํ e-mail์ฐพ๊ธฐDB์์ ์์ฒญํ e-mail์ด ์๋ค๋ฉด ๋น๋ฐ๋ฒํธ๊ฐ ๊ฐ์์ง ํ์ธ๋น๋ฐ๋ฒํธ๊น์ง ๊ฐ๋ค๋ฉด Token์ ์์ฑ์์ฒญ๋ ์ด๋ฉ์ผ์ด ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ์๋์ง ์ฐพ๊ธฐ ์ํด์๋ mongoose์ ์๋ findOne ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ ์ฐพ์์ผ ๋๋ค.์ฌ์ฉ์๊ฐ ๋ก๊ทธ์ธ ์ ์
Bcrypt๋ผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด์ฉํด์ ๋น๋ฐ๋ฒํธ๋ฅผ ์ํธํ์ฒ๋ฆฌ ํ ๊ฒ์ด๋ค.ํ์ฌ ๊ฐ์ ์ ์งํํ์ ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ดํด๋ณด๋ฉด, ์ ์ฅ๋ ๋น๋ฐ๋ฒํธ๊ฐ ๊ฐ์ ํ ๋ ์ ์๋ ๋น๋ฐ๋ฒํธ๋ก ๋ฑ๋ก๋์ด์๊ธฐ ๋๋ฌธ์ ๋๋ฌด ์์ ํ์ง ์๋ค.๊ทธ๋์ Bcrypt๋ฅผ ์ฌ์ฉํด์ ๋น๋ฐ๋ฒํธ๋ฅผ ์ํธํ์ฒ๋ฆฌ๋ฅผ ํ ๋ค ๋ฐ
์์ค ์์ id, password์ ๊ฐ์ ๋น๋ฐ์ ๋ณด๊ฐ ์์ผ๋ฉด github์ ์์ค๋ฅผ ์ฌ๋ฆด ๋, ๋ค๋ฅธ ์ฌ๋๋ค์ด ๋ณผ ์ ์๊ธฐ ๋๋ฌธ์ .gitignore ํ์ผ์ ์ฒ๋ฆฌ๋ฅผ ํ ๊ฒ์ด๋ค.๊ฐ๋ฐํ ๋ ๋ ๊ฐ์ง์ ํ๊ฒฝ์์ ์์ ํ ์ ์๋ค.Local ํ๊ฒฝ - local development
๊ธฐ์กด์ node server๋ฅผ ์ผฐ์ ๋ ์ด๋ค ์ฝ๋๋ฅผ ์์ ํ์ ๋, ์๋ฒ๋ฅผ ๋ด๋ ธ๋ค๊ฐ ๋ค์ ๊ธฐ๋, ์์ํ์ ๋ ๋ฐ๋ ์์ค๊ฐ ๋ฐ์๋์์๋ค.ํ์ง๋ง, Nodemon์ ์ด์ฉํ๋ค๋ฉด?!๊ตณ์ด ์๋ฒ๋ฅผ ๋ด๋ ธ๋ค๊ฐ ๋ค์ ์ผค ํ์๊ฐ ์๋ค.Nodemon์ ์์ค๋ฅผ ๋ณ๊ฒฝํ ๋ ๊ทธ๊ฒ์ ๊ฐ์งํด์ ์๋์ผ
chrome, whale ๊ณผ ๊ฐ์ ๋ธ๋ผ์ฐ์ ๋ค์ Client, ํด๋ผ์ด์ธํธ๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.์ด๋ค ํํ์ด์ง์์ ํ์๊ฐ์ ์ ์งํํ ๋ ์ด๋ฆ, ์ด๋ฉ์ผ, ๋น๋ฐ๋ฒํธ ๋ฑ์ ์ ๋ณด๋ฅผ ์ ๋ ฅํ ๋ค --> ์๋ฒ๋ก ๋ฑ๋กํ๋ ๊ณผ์ ์ ๊ฑฐ์ณ์ผ๋๋๋ฐ ํด๋ผ์ด์ธํธ์์ ์ ๋ณด๋ค์ ์์ฑํด์ ์๋ฒ๋ก ๋ณด๋ด๋ฉด ์๋ฒ๋
์น ์ฌ์ดํธ๋ค์ ๊ฐ๊ฒ๋๋ฉด ๊ธฐ๋ณธ์ ์ผ๋ก ํ์๊ฐ์ ์ ํ๊ฒ ๋๋๋ฐ ํ์๊ฐ์ ์ ํ ๋ ์ฐ๋ฆฌ๊ฐ ์์ฑํ ์ด๋ฆ, ์ฃผ์, ๋์ด, ์ด๋ฉ์ผ ์ฃผ์ ๋ฑ์ ์ ๋ ฅํ๋ฉด User DB์ ๋ค์ด๊ฐ๊ฒ ๋๋ค. > User์ ๊ด๋ จ๋ ๋ฐ์ดํฐ๋ค์ ๋ณด๊ดํ๊ธฐ ์ํด User Model, Schema๋ฅผ ๊ฐ๊ฒ ๋๋ค. >
nodeJS๊ฐ ๋์ค๊ธฐ ์ ๊น์ง๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๋ธ๋ผ์ฐ์ ์์๋ง ์ฌ์ฉ nodeJS๊ฐ ๋์ด์ผ๋ก์ธํด์ ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ server side์์๋ ์ฌ์ฉ ๊ฐ๋ฅ ์๋ฐ์คํฌ๋ฆฝํธ๋ server side์์ ์ธ ์ ์๋ ์ธ์ด ExpressJS: nodeJS๊ฐ ์๋์ฐจ์ ์์ง์ด๋ผ๋ฉด
๐ง ์ค๋์ ์๋ฌ๋ค์ด ํญ๋ฐํ ๋ ์ด๋ค!์ค๋ ํ๋ฃจ๋ ์ ๋ง ์ค๋ฅ๋ฅผ ์ก๋๋ผ ๋๋ฌด ๊ณ ์ํ๋ค. MySQL ๊ด๋ จํด์ root์์ ๋ ์ค๋ฅ๋ฅผ ์ ๋ง ๋ค ์๋ํด๋ณด์์ง๋ง ๊ฒฐ๊ตญ ํด๊ฒฐํ์ง ๋ชปํด์ ํฌ๋งท์ ํ๊ณ , Homebrew ๋ถํฐ ์์ํด์ nvm, node, MySQL ๋ฑ์ ์ค์นํ๊ณ ์๋ค.
ES6๋ฌธ๋ฒ & ๋ชจ๋ํ & node.js์์ ์ฌ์ฉํ๋ CommonJS ๊ณต๋ถ > arrow function, Spread / Rest ๋ฌธ๋ฒ ๊ตฌ์กฐ๋ถํด ํ ๋น ComminJS ๋์ ๋ฐฐ๊ฒฝ 1.node.js์์ ์ฌ์ฉํ๋ require๋ฌธ๋ฒ, module.exports, export
node.js > node.js์์ ์ฌ์ฉํ๋ package.json๊ณผ npm script์ ๋ํด์ ๊ณต๋ถ 1.devDependencies์ dependencies์ ์ฐจ์ด์ 2.npm๊ณผ ๋ชจ๋์ ์ดํด node.js VS browser > node.js๋ JavaScri
Unix ๊ณ์ด OS๋ฅผ ์ฌ์ฉํ๋ ์ด์ >์๋ฐ์คํฌ๋ฆฝํธ๋ ์คํ์์ค, ํนํ npm์ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ ํด์๋ค๊ณ ํ๋ค. node.js ๋ฒ์ ๊ด๋ฆฌํด์ธ nvm์ ์๋์ฐ์์๋ ์ง์ํ์ง ์๋๋ค๊ณ ํ๋ค. node.js ๋ชจ๋ ์ค ๋ฆฌ๋ ์ค/macOS์ฉ ์ปดํ์ผ ๋๊ตฌ๋ฅผ ์ด์ฉํ๋ ๊ฒฝ์ฐ ์๋์ฐ์์ ์ฌ์ฉํ