๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
[D+135] Final Project : 15์ผ์ฐจ(1) ์นด์นด์˜ค ์†Œ์…œ ๋กœ๊ทธ์ธ D+135 - Final Project : 15์ผ์ฐจ - ( ํฌ์ŠคํŠธ๋งจ์œผ๋กœ ์นด์นด์˜ค API ํ…Œ์ŠคํŠธ ) ์˜ค๋Š˜์€ ์†Œ์…œ๋กœ๊ทธ์ธ์— ๋Œ€ํ•ด ๊ตฌํ˜„์„ ์ง„ํ–‰ํ•ด ๋ณด์•˜์œผ๋ฉฐ, ์นด์นด์˜ค์— ๋“ฑ๋กํ•œ ๋‚ด ์ •๋ณด๊ฐ€ ํฌ์ŠคํŠธ๋งจ์„ ํ†ตํ•ด์„œ ๋‚˜์˜ค๋Š” ๊ฒƒ์„ ํ†ตํ•ด ํ™•์ธํ•ด๋ณด๊ณ  ์‹ ๊ธฐํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๋Š๊ผˆ๋‹ค. ์ค‘๊ฐ„์— ๊ณต์‹๋ฌธ์„œ๋ฅผ ์ œ๋Œ€๋กœ ํ™•์ธํ•ด๋ณด์ง€ ์•Š์•„์„œ ์•ฝ๊ฐ„ ์‚ฝ์งˆ์„ ํ•˜๊ธฐ๋Š” ํ–ˆ์ง€๋งŒ ๊ทธ๋ž˜๋„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ฒŒ ๋˜์–ด์„œ ๋„ˆ๋ฌด๋‚˜ ๋‹คํ–‰์ด์—ˆ๋‹ค. ์šฐ์„ ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š”์ง€๋ฅผ ํ™•์ธํ•˜๊ธฐ ์ „์— 'kakao devleopers'์— ๋‚ด ์•ฑ์„ ๋งŒ๋“ค์–ด์ค˜์•ผ ํ•œ๋‹ค. Kakao Developers ์นด์นด์˜ค API๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•ด๋ณด์„ธ์š”. ์นด์นด์˜ค ๋กœ๊ทธ์ธ, ๋ฉ”์‹œ์ง€ ๋ณด๋‚ด๊ธฐ, ์นœ๊ตฌ API, ์ธ๊ณต์ง€๋Šฅ API ๋“ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. developers.kakao.com ๊ทธ๋Ÿฌ๋ฉด ์•ฑ์— ๋Œ€ํ•œ ํ‚ค๋“ค์ด ์žˆ๋Š”๋ฐ .. 2021. 3. 3.
[D+134] Final Project : 14์ผ์ฐจ JWT(JSON Web Token) D+134 - Final Project : 14์ผ์ฐจ - ( JWT ํ† ํฐ ์‹œ์ž‘ํ•˜๊ธฐ ) ์˜ค๋Š˜์€ ์ธ์ฆ์„ ์œ„ํ•ด์„œ JWT ํ† ํฐ์„ ์ƒ์„ฑํ•˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์ณค์œผ๋ฉฐ, ์•„์ง ์ฝ”๋“œ๋ฅผ 100% ๋งŒ์กฑํ•œ ์ƒํƒœ๋กœ ์ž‘์„ฑํ•œ ๊ฒƒ์€ ์•„๋‹ˆ๋ผ์„œ ์•„์ง ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•œ ์ฝ”๋“œ๋ผ ๋ˆˆ์•ž์—์„œ ์•„๋ฅธ๊ฑฐ๋ฆฐ๋‹ค. ์ผ๋‹จ ๋ฐฑ์—”๋“œ์—์„œ ๊ฐ€์žฅ ๊ณ ๋ฏผํ–ˆ๋˜๊ฑด ๋ฆฌํ”„๋ ˆ์‹œ ํ† ํฐ์„ ๋งŒ๋“ค์–ด์ฃผ๋ƒ ์•„๋‹ˆ๋ƒ์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์ด ๋งŽ์•˜๋‹ค. ๋‚˜๋Š” ์ด์ „์— ์ฒซ ํ”„๋กœ์ ํŠธ์—์„œ JWT๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด๊ธฐ๋Š” ํ–ˆ์ง€๋งŒ ์•ก์„ธ์Šค ํ† ํฐ ํ•˜๋‚˜๋กœ๋งŒ ํ† ํฐ์„ ์‚ฌ์šฉํ•ด๋ณด์•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฆฌํ”„๋ ˆ์‹œ๋ฅผ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š์ง€์— ๋Œ€ํ•ด์„œ๋Š” ์กฐ๊ธˆ ๋ง‰๋ง‰ํ•œ ์ƒํƒœ์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฌ๋Ÿฌ ๊ฒ€์ƒ‰์„ ํ•ด๋ณด๋‹ˆ ๋ฆฌํ”„๋ ˆ์‹œ๋Š” ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๊ฒƒ์€ ์•„๋‹ˆ๋ผ๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ๊ณ  ์•„๋‹ˆ๋ฉด ์•ก์„ธ์Šคํ† ํฐ ํ•˜๋‚˜๋กœ ํ† ํฐ์„ ๊ฐฑ์‹ ํ•œ๋‹ค๋Š” ๋‚ด์šฉ์„ ๋ณด๊ณ  ํŒ€์›๋ถ„๊ป˜ ์•ก์„ธ์Šคํ† ํฐ ํ•˜๋‚˜๋กœ ์ง„ํ–‰ํ•ด๋ณด๋Š”๊ฒŒ ์–ด๋–ป๊ฒ ๋ƒ๋ผ๋Š” ์˜๊ฒฌ.. 2021. 3. 3.
[D+133] Final Project : 13์ผ์ฐจ multer ์ ์šฉํ•˜๊ธฐ D+133 - Final Project : 13์ผ์ฐจ - ( multer ์ ์šฉํ•˜๊ธฐ ) ์˜ค๋Š˜์€ ํŒ€์›๋ถ„๊ณผ ํ•จ๊ป˜ ๋ฉ€ํ„ฐ๋ฅผ ๊ตฌํ˜„ํ•ด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด์•˜๋‹ค. ๋‚˜๋ž‘ ํŒ€์›๋ถ„ ๋ชจ๋‘ ์ฒ˜์Œ ์‚ฌ์šฉํ•ด๋ณด๋Š” ๋ชจ๋“ˆ์ด๋ผ์„œ ์‚ฌ์šฉํ•ด ๋ณด๊ธฐ ์ „์— ์•ฝ๊ฐ„ ๊ธด์žฅ์„ ๋งŽ์ด ํ–ˆ๋Š”๋ฐ, ์‚ฌ์šฉํ•ด ๋ณด๊ณ  ๋‚˜์„œ ์—ญ์‹œ๋‚˜ ์ข€ ๋” ๊ณต๋ถ€ํ•ด๋ด์•ผํ•  ํŒŒํŠธ๋ผ๋Š” ๊ฒƒ์„ ๋Š๋ผ๊ธฐ๋Š” ํ–ˆ์ง€๋งŒ ใ…Žใ…Žใ…Ž ๊ทธ๋ž˜๋„ ๊ทธ๋ ‡๊ฒŒ ๊ฒ๋จน์€ ๋งŒํผ ์–ด๋ ต์ง€๋Š” ์•Š์•˜๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ์ผ๋‹จ ๊ฐ„๋‹จํ•˜๊ฒŒ multer๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ด์•ผ๊ธฐ ํ•ด๋ณด์ž๋ฉด, multer๋Š” ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๋ชจ๋“ˆ์ด๋‹ค. ์ด๋•Œ multer๋งŒ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ์—๋Š” ์ด๋ ‡๊ฒŒ ์ง์ ‘์ ์œผ๋กœ ํด๋”์•ˆ์— ๋“ค์–ด๊ฐ€๊ฒŒ ๋˜๋Š”๋ฐ ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ์„œ๋ฒ„์—์„œ ์ด๋ฏธ์ง€๊ฐ€ ์ฐจ์ง€ํ•˜๋Š” ์šฉ๋Ÿ‰์œผ๋กœ ๋ถ€๋‹ด์ด ๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ์–ด์ฐจํ”ผ ๋ฐฐํฌ๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด S3๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ S3 ๋ฒ„ํ‚ท์•ˆ์— ๋‹ด์„ ์ˆ˜ ์žˆ๋Š”.. 2021. 3. 1.
[D+132] Final Project : 12์ผ์ฐจ JWT(JSON Web Token) ํ•™์Šต D+132 - Final Project : 12์ผ์ฐจ - ( multer, social login, jwt ํ•™์Šต ) ์˜ค๋Š˜์€ ๋‚ด์ผ๋ถ€ํ„ฐ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์ง„ํ–‰ํ•˜๊ฒŒ ๋  ์†Œ์…œ๋กœ๊ทธ์ธ๊ณผ multer, ๊ทธ๋ฆฌ๊ณ  ํ† ํฐ์— ๋Œ€ํ•ด์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•™์Šต์„ ํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์กŒ๋‹ค. ์†Œ์…œ๋กœ๊ทธ์ธ์€ First ํ”„๋กœ์ ํŠธ ๋•Œ ๊นƒํ—ˆ๋ธŒ๋ฅผ ๊ตฌํ˜„ํ•ด ๋ณด์•˜๊ธฐ๋„ ํ–ˆ๊ณ , ๊ฐ™์ด ์ง„ํ–‰ํ•˜๋Š” ํŽ˜์–ด๋ถ„๊ป˜์„œ First ํ”„๋กœ์ ํŠธ๋•Œ ์†Œ์…œ๋กœ๊ทธ์ธํŒŒํŠธ๋กœ ์นด์นด์˜ค๋ฅผ ์ด๋ฏธ ์ง„ํ–‰ํ•ด ๋ณด์…จ๋‹ค๊ณ  ํ•˜์…”์„œ ํฐ ๊ฑฑ์ •์€ ์—†์ง€๋งŒ...(?) ์ด๋ฏธ์ง€๋ฅผ ์—…๋กœ๋“œํ•˜๋Š” multer์™€ ์ธ์ฆ์‹œ ์‚ฌ์šฉํ•˜๋Š” JWTํ† ํฐ์— ๋Œ€ํ•ด์„œ๋Š” ํ˜ผ์ž ์ œ๋Œ€๋กœ ํ•ด๋ณธ ์ ์ด ์—†์–ด์„œ ์•ฝ๊ฐ„ ๊ธด์žฅ์ƒํƒœ๋‹ค. multer๋Š” ๋‹จ์ˆœํžˆ ๋‚ด๊ฐ€ ๋งŒ๋“  ์„œ๋ฒ„์—์„œ ์ง€์ •ํ•œ ํด๋”์— ์ด๋ฏธ์ง€๋ฅผ ์—…๋กœ๋“œํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์ง€๋งŒ ์ด ๋ฐฉ๋ฒ•์€ ์„œ๋ฒ„๊ฐ€ ๋ฌด๊ฑฐ์›Œ์ง€๋ฉด์„œ ๋ถ€๋‹ด์„ ๊ฐ€์ง€๊ฒŒ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ณดํ†ต ๋ฐฐํฌ.. 2021. 2. 28.
[D+131] Final Project : 11์ผ์ฐจ ํšŒ์›ํƒˆํ‡ด, ๋กœ๊ทธ์•„์›ƒ API D+131 - Final Project : 11์ผ์ฐจ - ( ํšŒ์›ํƒˆํ‡ด, ๋กœ๊ทธ์•„์›ƒ API ๊ตฌํ˜„ ) ์˜ค๋Š˜์€ ํšŒ์›ํƒˆํ‡ด API์™€ ๋กœ๊ทธ์•„์›ƒ API๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์กŒ๋‹ค. ๋จผ์ € ํšŒ์›ํƒˆํ‡ด ๋กœ๊ทธ์•„์›ƒ์„ ๊ตฌํ˜„ํ•˜๋Š”๋ฐ ์ƒ๊ฐํ•ด๋ณด๋‹ˆ ํšŒ์›ํƒˆํ‡ด๋ฅผ ํ•  ๊ฒฝ์šฐ์— ๋‹จ์ˆœํžˆ ํšŒ์›์ •๋ณด๋งŒ ์‚ญ์ œํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ํŠน์ • ํšŒ์›์ด ์ž‘์„ฑํ•œ ๊ธ€๋„ ์ง€์›Œ์•ผ ํ•˜๋Š” ๊ฑด์ง€์— ๋Œ€ํ•ด์„œ ๋ฌธ๋“ ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํŒ€์žฅ๋‹˜๊ป˜ ๋จผ์ € ์ด ์ด์•ผ๊ธฐ๋ฅผ ํ•˜๊ฒŒ ๋˜์—ˆ๊ณ  ํŒ€์žฅ๋‹˜์€ ํšŒ์›์ •๋ณด๋งŒ ์ง€์šฐ์ง€ ์•Š๊ณ  ํŠน์ • ํšŒ์›์ด ์—ฐ๊ด€๋œ ๊ฒƒ๋“ค์€ ๋ชจ๋‘ ์ง€์›Œ์•ผ ํ•œ๋‹ค๊ณ  ํ•˜์˜€๋‹ค. ๊ทธ๋ž˜์„œ ํšŒ์›ํƒˆํ‡ด๋ฅผ ํ•  ๊ฒฝ์šฐ์— ๋‚ด๊ฐ€ ๊ตฌํ˜„ํ•ด์•ผ ํ•  ๊ฒƒ์€ 1. ๋‚ด๊ฐ€ ์“ด ๊ธ€ ์‚ญ์ œํ•˜๊ธฐ 2. ๋‚ด๊ฐ€ ๋ˆ„๋ฅธ ์ข‹์•„์š” / ์‹ซ์–ด์š” ์‚ญ์ œํ•˜๊ธฐ 3. ๋‚ด์ •๋ณด ์‚ญ์ œํ•˜๊ธฐ ์ด๋ ‡๊ฒŒ 3๊ฐ€์ง€๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ–ˆ๋‹ค. ๋‚ด๊ฐ€ ์“ด ๊ธ€์„ ์‚ญ์ œํ•˜๋Š”๊ฑด ๊ฐ„๋‹จํ•˜๊ฒŒ remove๋ฅผ ํ†ตํ•ด์„œ ๊ฐ’์„ ์‚ญ.. 2021. 2. 27.
[D+130] Final Project : 10์ผ์ฐจ mongoose '$' update operator D+130 - Final Project : 10์ผ์ฐจ - ( ๋œป๋ฐ–์— ์ตœ๊ณ ๋‚œ์ด๋„ ) ์˜ค๋Š˜์€ ์–ด์ œ ์ €๋…์— ๋Œ€ํ•œ ๊ธฐ๋ก๋ถ€ํ„ฐ ํ•˜์ž๋ฉด ๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์Šค์ผ€์ค„์„ ์ˆ˜์ •ํ•˜๋Š” API์™€ ์ƒˆ๋กœ ์ž‘์„ฑํ•œ ์Šค์ผ€์ค„์„ ์ €์žฅํ•˜๋Š” API๋ฅผ ๊ตฌํ˜„ํ•˜์˜€๋Š”๋ฐ ์ด๋•Œ ์Šค์ผ€์ค„์„ ์ˆ˜์ •ํ•˜๋Š” API๋ฅผ ์ฒ˜์Œ์—๋Š” PATCH๋กœ ์„ค์ •์„ ํ•ด์คฌ์—ˆ๋Š”๋ฐ ์Šค์ผ€์ค„์—์„œ ๋ฐ›์•„์˜ค๋Š” ์ •๋ณด์˜ ์–‘๊ณผ ์ข…๋ฅ˜๊ฐ€ ๋„ˆ๋ฌด ๋‹ค์–‘ํ•˜๊ณ  ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ผ์ผํžˆ ์ฐพ๋Š”๋ฐ ๋” ์˜ค๋žœ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆด ๊ฒƒ ๊ฐ™์•„์„œ ํŒ€์žฅ๋‹˜๊ณผ ์ƒ์˜ ๋์— PATCH์—์„œ ๊ทธ๋ƒฅ ์ „์ฒด์ ์œผ๋กœ ์ •๋ณด๋ฅผ ๋ฐ›์•„์˜ค๋Š” PUT์œผ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ๊ตฌํ˜„ํ•˜์˜€๋‹ค. ์ƒˆ๋กœ์šด ์Šค์ผ€์ค„์„ ์ €์žฅํ•˜๋Š” API๋Š” ์ผ๋‹จ ์™„์„ฑํ•˜๊ธฐ๋Š” ํ–ˆ์œผ๋‚˜ ํ”„๋ก ํŠธ์—”๋“œ ๋ถ„๋“ค๊ณผ ์–ด๋–ป๊ฒŒ ์ •๋ณด๋ฅผ ๋ฐ›์•„์˜ฌ์ง€์— ๋Œ€ํ•œ ์ƒ์˜๋ฅผ ๊ตฌ์ฒด์ ์œผ๋กœ ํ•˜์ง€ ์•Š์•„์„œ ํ•ด๋‹น API๋Š” ์ฝ”๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ๋Š” ํ–ˆ์œผ๋‚˜ ํ”„๋ก ํŠธ์—”๋“œ ๋ถ„๋“ค์ด ๊ธฐ๋Šฅ ๊ตฌํ˜„์„ ํ•˜์‹  ์ดํ›„์— .. 2021. 2. 26.