node.js ์น๊ฐ๋ฐ5 ์น๊ฐ๋ฐ - 12 socket.io ์ฌ์ฉ ์ฑํ ๊ธฐ๋ฅ ์ถ๊ฐ ์ฑํ ๊ธฐ๋ฅ์ ๋์ผ๋ก ์ด ์ฑ ์ ํตํด์ ์ถ๊ฐํ ์ ์๋ ๊ธฐ๋ฅ์ ๊ฑฐ์ ๋ค ์ถ๊ฐํ๋ค. (API ๋ณด์ ๋ถ๋ถ์ ๋ญ ์๋ฆฐ์ง ๋ชจ๋ฅด๊ฒ ๊ณ ๊ตณ์ด ํ์ํ๊ฐ ์ถ์ด ํจ์ค) ์ผ๋จ ๊ฐ์ฅ ์ค์ํ๊ฒ ์๊ฐํ๋ ์ฑํ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๋ค. ์ ๋ฒ์ฃผ ๋ชฉ์์ผ(11์ 18์ผ) ๋ถํฐ ํ๊ธฐ ์์ํ๋๋ฐ ์ค๋(22์ผ ์์์ผ) ๋๋ง์ณค๋ค. ์ฌ์ค ์ ๋๋ก ๋๋ง์น ๊ฒ๋ ์๋ ์์ง๋ ์ค๋ฅ ๋ง์.. ์ํผ ์ผ๋จ ๊ฒฐ๊ณผ ํ๋ฉด์ ์ด๋ ๋ค. ์ผ์ชฝ์ ์์๊ณ์ ๋ก๊ทธ์ธ์ด๊ณ ์ค๋ฅธ์ชฝ์ ํฉํ๋ฆฝ ๋ก๊ทธ์ธ์ ํ์ ๋์ด๋ค. ๋ก๊ทธ์ธ ํ ์ฌ์ฉ์ ์ ๋ณด๋ฅผ currentUser๋ก ๊ฐ์ ธ์์ ๋น๊ตํด์ ์คํ์ผ์ ์ถ๊ฐํด ์๊ธฐ๊ฐ ๋ณด๋ธ๊ฑด ํํฌ์์ผ๋ก ํ์๋๊ฒ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ด์ ์์ ์ฅ๋ฐ๊ตฌ๋๋ ์์ ๊ณ ๋ฉ์์ง ์์ด์ฝ์ ๋ฃ๊ณ ์ ์ฒด ๋ฉ์์ง๊ฐ ๋จ๊ฒ ํ๋ค. ์ฝ๋๋ ๋ค ์บก์ณํด์ ๋ฃ์ด์ผ ๋๋๋ฐ ์ข ๊ท์ฐฎ๋ค..... ๊ทธ๋๋ ๊ทธ๋ฅ ๊ธฐ๋ก์.. 2021. 11. 22. ์น๊ฐ๋ฐ - 10 Ajax ์ฌ์ฉํ์ฌ Modal ๋์ฐ๊ธฐ ์ด๊ฑฐ๋ง ํ๋๋ฐ ์ค๋ ํ๋ฃจ ์ข ์ผ ๊ฑธ๋ฆฐ ๊ฒ ๊ฐ๋ค... ๋ฒ์จ 5์๋ค.... ์ค๋ ํ๊ฑฐ๋ Ajax ํจ์๋ฅผ ์ฌ์ฉํด์ Json ํ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์์ฒญํด Modal์ ์ ๋ณด๋ฅผ ๋์ฐ๋ ๊ฒ ๊น์ง ํ๋ค. ์ด ๊ณผ์ ์์ ์ง์ง ์จ๊ฐ ์ค๋ฅ ๋ค ๋ง๋๊ณ ๋ณ ๊ณ ์์ ํ๋ค... ํ ๊ทธ๋๋ ๋์์ ๋ ๊ฒ ๊ฐ๋ค. ์ผ๋จ ์์ฑ๋ ํ๋ฉด์ ์ด๋ ๋ค. ๋ชจ๋ฌ๋ก ํ์ฌ DB์ ์ ์ฅ๋์ด ์๋ Jam ๊ฒ์๋ฌผ์ title๊ณผ description ํ๋๋ฅผ ์ถ๋ ฅํ๋ค. ๋ชจ๋ฌ์ ๋์ฐ๊ธฐ ์ํด์๋ ๋ชจ๋ฌ UI๋ฅผ ์ง์ ํ๋ ejs ํ์ผ๊ณผ, ๋ชจ๋ฌ์ ๋์ธ ๋ด์ฉ์ ๋น๋๊ธฐ๋ก ๊ฐ์ ธ์ค๋ ajax ์ฝ๋์ js ํ์ผ ๋๊ฐ๊ฐ ํ์ํ๋ค. ๋จผ์ ๋ชจ๋ฌ UI๋ฅผ ์ง์ ํ๋ ejs ํ์ผ์ ์ด๋ ๊ฒ ์๊ฒผ๊ณ , views ํด๋ ๋ฐ์ ์ ์ฅํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ฑธ jam ํ์ด์ง์ ๋์์ผ ํ๋๊น jam.ejs์ include.. 2021. 11. 16. ์น๊ฐ๋ฐ - 6 ๋ง์ดํ์ด์ง, ํ์์ ๋ณด ์์ ์ค๋ ๊ธฐ๋ฅ ๊ตฌํ ์ข ๋ง์ด ํ๋ฏ? ์ค๋ ์๋กญ๊ฒ API ๋๊ฐ๋ ค๋ค๊ฐ ๊ทธ๋ฅ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ๋ถํฐ ๋ค ํด ๋๊ณ ๋์ด๊ฐ์ผํ ๊ฒ ๊ฐ์์ CRUD ๊ธฐ๋ฅ๋ถํฐ ๋ค ์ถ๊ฐํด๋ฒ๋ ธ๋ค. ์์ง Delete๋ ๋ชปํ๊ณ ์ค๋์ Update๊ธฐ๋ฅ์ ๋ฃ์๋ค. ๋์ค์ ๊ฒ์๋ฌผ ์ฐ๊ณ ์ญ์ ํ๊ณ ํ๋ ๊ธฐ๋ฅ๋ ๋ค ์ด์ฐจํผ ํ์๊ฐ์ ์ด๋ ๋น์ทํ ๊ตฌ์กฐ๋ก ์คํ๋๊ธฐ ๋๋ฌธ์ ์ด๊ฑธ ์๋ฒฝํ๊ฒ ํด๋๊ณ ๋์ด๊ฐ๋ ค๊ณ ํ๋ค. ์ํผ ์ผ๋จ ๋ง์ดํ์ด์ง๋ ์ด๋ ๊ฒ ์๊ฒผ๋ค. ๋จผ์ userController.js์ show, showMypage ๋ผ๋ ๋๊ฐ์ ์ก์ ์ ์ถ๊ฐํ๋ค. "/mypage/user._id" URL๋ก ๋์ด์ค๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์ ID ํ๋ผ๋ฏธํฐ ์ ๋ณด๋ฅผ URL ํ๋ผ๋ฏธํฐ๋ก๋ถํฐ ์์งํ์ฌ ์ ์ฅํ๊ณ , DB์์ ํด๋น ์ฌ์ฉ์๋ฅผ ์ฐพ๋๋ค. ์ฐพ์ ์ฌ์ฉ์๋ฅผ res.locals.user๋ก ์ง์ญ๋ณ์ ์ถ๊ฐ๋ฅผ .. 2021. 11. 11. ์น๊ฐ๋ฐ - 5 Validator ์์ Validator๊ฐ ๊ณ์ ์๋จนํ๋๋ฐ ์ญ์ ๋ฒ์ ๋ฌธ์ ์๋ค. ์ฑ ์ ๋์์๋๋๋ก express-validator๋ฅผ npm์ผ๋ก ์ค์นํ๊ณ main.js์ app.use(expressValidator())๋ก ์ฌ์ฉ์ ์ ์ธํด์คฌ๋๋ฐ ์๊พธ expressValidator is not a function์ด๋ผ๋ ํ์ ์๋ฌ๊ฐ ๋ฌ๋ค. ๊ทผ๋ฐ ์๊ณ ๋ณด๋๊น ๋ฒ์ ์ ๋ฐ์ดํธ(6.x.x) ๋ ๋ค๋ก app.use(expressValidator())๋ ์ ์จ์ค๋ ๋๋ค๊ณ ํ๊ณ , ์ ์ธํด์ ์ฌ์ฉํ๋ ๋ฐฉ์๋ ์ข ๋ฌ๋๋ค. ์ฌ๊ธฐ์ ์ง์ง ๋ง์ด ํค๋งธ๋ค... https://noodler.tistory.com/46 https://velog.io/@khyunjiee/NodeJS-express-validator ์ฌ๊ธฐ ๋๊ณณ์ ์ฐธ๊ณ ํด์ ์๋์ ๊ฐ์ด ์ฝ๋ฉํ๋ค. ์ผ๋จ mai.. 2021. 11. 11. ์น๊ฐ๋ฐ - 4 ํจ์ค์๋ ํด์ฑ/๋ก๊ทธ์ธ/๋ก๊ทธ์์ ์์ ๋ ์ฌํญ Passport.js๋ฅผ ์ฌ์ฉํ ํ์๊ฐ์ ๋ฐ ๋ก๊ทธ์ธ/๋ก๊ทธ์์ ๋น๋ฐ๋ฒํธ๋ฅผ hash, salt ๊ฐ์ผ๋ก ์ ์ฅํจ ๋ก๊ทธ์ธ ์ธ์ ์ ์ง ๋ก๊ทธ์ธ ์ํ ๋ค๋น๊ฒ์ด์ ๋ฐ์ ํ์ errorPage UI ์์ ์ด๋ค. ์ฌ์ค Passport.js๋ฅผ ์ฌ์ฉํ๋๊น ์ธ์ ์ ์ง๋ ๋ก๊ทธ์์ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ๋ ์ด๋ ต์ง ์์๋ค. ์๋ฌดํผ ๊ทธ๋์ ์์ ๋ ์ฝ๋๋ค์ ์ด๋ ๋ค. User ๋ชจ๋ธ์ด Passport.js๋ฅผ ํ๋ฌ๊ทธ์ธ์ผ๋ก ์ฌ์ฉํ๊ณ ์์ด Passport.js์์ ์ ๊ณตํ๋ register ๋ฉ์๋๋ฅผ ์ฌ์ฉํด์ ํ์๊ฐ์ ๋ก์ง์ ๊ตฌํํ๋ค. (์ฌ๊ธฐ์ ๋ญ๊ฐ ์๋ชป๋๋์ง ์ ์๋๋ ์ ์ด ์๋๋ฐ ๋ฐ์์ ๋ค์ ์ค๋ช ํ๊ฒ ์) ์ํผ ์ ๋ ๊ฒ ํ์๊ฐ์ ์ ์งํํ๋ฉด, ํจ์ค์๋ ๊ฐ์ ๋ํ์ฌ ์ํธ์ ํด์ฑ๊ฐ์ด ์๋์ผ๋ก ์ ์ฅ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ก๊ทธ์ธ/๋ก๊ทธ์์ ๋ก์ง์ด๋ค. ์ฌ๊ธฐ์๋ Pas.. 2021. 11. 10. ์ด์ 1 ๋ค์ LIST