๐Ÿง‘โ€๐Ÿ’ป ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž๋Š” ํด๋ผ์ด์–ธํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏฟ์ง€ ๋งˆ๋ผ

2020 ์ˆ˜๋Šฅ ํ‰๊ฐ€์› ์„ฑ์ ํ‘œ ๋Œ€๋ž€์œผ๋กœ ์•Œ์•„๋ณธ ํ”ํžˆ ๋งˆ์ฃผ์น˜๋Š” ํœด๋จผ ์—๋Ÿฌ์™€ ํผ ๋ฐ์ดํ„ฐ ์กฐ์ž‘์— ๋Œ€์‘ํ•˜๊ธฐ

์‹œ์ž‘ํ•˜๋ฉฐ

์˜ค๋Š˜ ์ƒˆ๋ฒฝ, 2020 ๋Œ€ํ•™์ˆ˜ํ•™๋Šฅ๋ ฅ์‹œํ—˜(์ดํ•˜ ์ˆ˜๋Šฅ)์˜ ์„ฑ์ ํ‘œ๋ฅผ ๋ฏธ๋ฆฌ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ํ•œ ๋„ค์ด๋ฒ„ ์นดํŽ˜์— ๊ฒŒ์‹œ๋˜์—ˆ๋‹ค. N์ˆ˜์ƒ์— ํ•œํ•ด ๊ฐ€๋Šฅํ•œ ๋ฐฉ๋ฒ•์ด์—ˆ์ง€๋งŒ, ์•„์ง ๊ณต์‹ ๋ฐœํ‘œ ์ „์— ์ˆ˜๋Šฅ ์„ฑ์ ํ‘œ ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์— ๋งŽ์€ ์ด๋“ค์ด ๊ด€์‹ฌ์„ ๋ณด์˜€๊ณ , ์ด๋‚ด ๋ณธ์ธ์€ ๋ณด์•ˆ ํ—ˆ์ ์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ํ•  ๋ง์„ ์žƒ์—ˆ๋‹ค.

Imgur

๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ–ˆ๋‹ค.

๊ณต์ธ์ธ์ฆ์„œ๋กœ ๋กœ๊ทธ์ธํ•œ ๋’ค, ์กฐํšŒํ•˜๊ณ ์ž ํ•˜๋Š” ์„ฑ์  ๋…„๋„์˜ select - option ๊ฐ’์—๋Š” 2019 ๋ฐ–์— ์—†์ง€๋งŒ, ์ด ๊ฐ’์„ DOM ๋‹จ์—์„œ ๊ฐ’์„ 2020์œผ๋กœ ๋ฐ”๊พผ ๊ฒƒ์ด๋‹ค. ์ด๋Ÿฐ ๋’ค ์กฐํšŒ๋ฅผ ํ•˜๋ฉด 2020 ์„ฑ์ ํ‘œ๊ฐ€ ๋‚˜์˜ค๋Š” ๊ทธ๋Ÿฐ ์›๋ฆฌ์˜€๋‹ค.

์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž๋Š” ํด๋ผ์ด์–ธํŠธ๋ฅผ ๋ฏฟ์ง€ ๋งˆ๋ผ

๋ฌผ๋ก  ์ง€๊ธˆ์€ ํ•ด๋‹น ๋ฐฉ๋ฒ•์ด ํ†ตํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ํ•œ๋‹ค. ์ด๋Ÿฐ ์ด์Šˆ๋Š” ์‹ค์ˆ˜ํ•˜์ž๋ฉด ์–ผ๋งˆ๋“ ์ง€ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋ฐ˜๋Œ€๋กœ ์ด๋ฒˆ ์ผ€์ด์Šค์ฒ˜๋Ÿผ ์‹ค์ˆ˜ ํ•˜๋‚˜๊ฐ€ ํฐ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ๋„ ํ•œ๋‹ค. ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋ฐœ์ž๋ณด๋‹ค DB์™€ ์ƒ๋Œ€์ ์œผ๋กœ ๊ฐ€๊นŒ์šด ์œ„์น˜์— ์žˆ๊ณ , DB ์กฐํšŒ๋ฅผ ํ•œ ๊ฒฐ๊ณผ๋ฅผ ํด๋ผ์ด์–ธํŠธ๋ฅผ ํ–ฅํ•ด ๋ณด์—ฌ์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ์ด ์ ์—์„œ ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž๋Š” ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์œผ๋กœ๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ์ด ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค˜๋„ ๋˜๋Š”๊ฐ€?(๊ถŒํ•œ) ํ˜น์€ ์‚ฌ์šฉ์ž๊ฐ€ ์˜๋ฏธํ•œ๊ฒŒ ์ด๊ฒŒ ๋งž๋Š”๊ฐ€?(ํœด๋จผ ์—๋Ÿฌ์™€ ํฌ๋งท ๊ฒ€์ฆ) ํ˜น์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋ณด๋‚ธ ๋ฐ์ดํ„ฐ๊ฐ€ ๋งž๋Š”๊ฐ€?/์ง€๊ธˆ ์ด๊ฑธ ์กฐํšŒํ•ด๋„ ๋˜๋Š”๊ฐ€?(ํผ ๋ฐ์ดํ„ฐ ์กฐ์ž‘๊ณผ ์œ ํšจ์„ฑ ๊ฒ€์ฆ)์— ๋Œ€ํ•ด ๊ณ ๋ฏผํ•˜๊ณ  ์ •ํ™•ํ•œ ์‘๋‹ต์„ ๋ณด๋‚ผ ํ•„์š”๊ฐ€ ์žˆ๋‹ค. ์ด ์ ์—์„œ ์ข€ ๋” ์ž์„ธํžˆ ์„ค๋ช…ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

๊ถŒํ•œ (์‚ฌ์šฉ์ž์—๊ฒŒ ์ด ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ค˜๋„ ๋˜๋Š”๊ฐ€?)

๊ฐ€์žฅ ๊ธฐ๋ณธ์ด ๋˜๋Š” ๊ฒฝ์šฐ๋‹ค. API ๋งˆ๋‹ค ์‚ฌ์šฉ์ž ์ธ์ฆ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์€ ๋‹ค๋ฅด๊ฒ ์ง€๋งŒ ์„ค๋งˆ id ๊ฐ™์€ ๋‚ด์šฉ์„ ํ‰๋ฌธ์œผ๋กœ ์ฟ ํ‚ค ๊ฐ™์€ ๊ณณ์— ๋„ฃ์–ด๋†จ๋‹ค๊ฐ€ ํผ ๋ฐ์ดํ„ฐ์— ๋„ฃ์–ด์„œ API ์š”์ฒญ ํ›„ ์‚ฌ์šฉ์ž๋ฅผ ํŒ๋‹จํ•˜๋Š” ๊ทธ๋Ÿฐ ์„œ๋น„์Šค๋Š” ์—†๊ธธ ๋ฐ”๋ž€๋‹ค.

๋ณดํ†ต์€ API ์ธ์ฆํ‚ค ํ˜น์€ JWT์™€ ๊ฐ™์€ ํ† ํฐ์„ ํ—ค๋”์— ๋‘๊ณ  ๊ทธ ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ€์ง„ Access key ํ˜น์€ token์ด ์œ ํšจํ•œ ์ง€๋ฅผ ๊ฒ€์ฆํ•˜๊ณ  ์œ ํšจํ•˜๋‹ค๋ฉด ์ •์ƒ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ทธ๋Ÿฐ ์ ˆ์ฐจ๊ฐ€ ์žˆ์–ด์•ผ ํ•œ๋‹ค.

๊ถŒํ•œ ๊ฐ™์€ ๊ฒฝ์šฐ๋„ ์˜ˆ๋ฅผ ๋“ค์–ด ํ•œ ์„œ๋น„์Šค์— ์ƒ๋Œ€์ ์œผ๋กœ ๊ถŒํ•œ์ด ๋†’์€ admin ์œ ์ €์™€ ์ƒ๋Œ€์ ์œผ๋กœ ๊ถŒํ•œ์ด ๋‚ฎ์€ normal ์œ ์ €์™€ ๊ถŒํ•œ์ด ์ œ์ผ ์—†๋Š” guest ์œ ์ €๊ฐ€ ์žˆ๋‹ค๋ฉด ์ด ์…‹์€ ๊ฐ๊ฐ ์กฐํšŒ๊ฐ€๋Šฅํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‹ฌ๋ผ์•ผ ํ•œ๋‹ค. ์ด ๊ถŒํ•œ์— ๋”ฐ๋ฅธ ๋ถ„๊ธฐ๋ฅผ ์„ค์ •ํ•ด๋†“๋Š” ๊ฒƒ์ด ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž์˜ ๊ธฐ๋ณธ์ ์ธ ์—ญํ• ์ด๋‹ค.

ํœด๋จผ ์—๋Ÿฌ์™€ ํฌ๋งท ๊ฒ€์ฆ (์‚ฌ์šฉ์ž๊ฐ€ ์˜๋ฏธํ•œ๊ฒŒ ์ด๊ฒŒ ๋งž๋Š”๊ฐ€?)

์ธ๊ฐ„์€ ์™„๋ฒฝํ•˜์ง€ ์•Š๋‹ค. ํ•ญ์ƒ ์‹ค์ˆ˜ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ์‹ค์ˆ˜๋ฅผ ํ•œ๋‹ค. ๊ทธ ์ค‘์—” ์•„๋ฌด๋ฆฌ ํ”„๋ก ํŠธ์— '-'๋ฅผ ๋นผ๊ณ  ์ž…๋ ฅํ•ด์ฃผ์„ธ์š” ๋ผ๊ณ  ์จ์žˆ์–ด๋„ ๊ตณ์ด ๋ถ™์ด๋Š” ์‚ฌ๋žŒ, โ€˜-โ€™ ๋Œ€์‹ ์— ๋„์–ด์“ฐ๊ธฐ ํ•˜๋Š” ์‚ฌ๋žŒ, โ€˜-โ€™ ๋Œ€์‹ ์— '_'๋กœ ์“ฐ๋Š” ์‚ฌ๋žŒ, ํ•œ ๊ธ€์ž๋ฅผ ๋นผ๋จน์€ ์‚ฌ๋žŒ ๋“ฑ ์ •๋ง ๋‹ค์–‘ํ•˜๋‹ค.

๋ฐ์ดํ„ฐ์˜ ์–‘์ด ๋งŽ์•„์งˆ ์ˆ˜๋ก ์ž˜๋ชป๋œ ๋ฐ์ดํ„ฐ๋„ ๋Š˜์–ด๋งŒ ๊ฐ„๋‹ค. ์‚ฌ์‹ค ์ด๋Ÿฐ ํฌ๋งท ๊ฒ€์ฆ์˜ ๊ฒฝ์šฐ ํด๋ผ์ด์–ธํŠธ์—์„œ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒŒ ๋งž๋‹ค. ์ตœ์ข…์ ์œผ๋กœ ์„œ๋ฒ„๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ธฐ ์ „ ๋งˆ์ง€๋ง‰์— ์ผ๋ จ์˜ ๋ฐ์ดํ„ฐ์—์„œ ํฌ๋งท์ด ํ‹€๋ฆฐ ๊ฒฝ์šฐ๋Š” ์—†๋Š” ์ง€ ํ™•์ธํ•˜๊ณ  ๊ฒ€์ฆํ•ด์•ผ ํ•œ๋‹ค.

๋งŒ์•ฝ ๋‹น์‹ ์ด ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž์ธ๋ฐ ์œ„์™€ ๊ฐ™์ด ์ฒ˜๋ฆฌํ•˜๊ธฐ ์–ด๋ ค์šด ๋ฐ์ดํ„ฐ๋“ค์ด ๋“ค์–ด์˜จ๋‹ค๋ฉด, ์–ผ๋ฅธ ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๊ฐ€์„œ ํฌ๋งท ๊ฒ€์ฆ ์ข€ ํ•ด๋‹ฌ๋ผ๊ณ  ๋ถ€ํƒํ•˜์ž.

ํผ ๋ฐ์ดํ„ฐ ์กฐ์ž‘๊ณผ ์œ ํšจ์„ฑ ๊ฒ€์ฆ (์‚ฌ์šฉ์ž๊ฐ€ ๋ณด๋‚ธ ๋ฐ์ดํ„ฐ๊ฐ€ ๋งž๋Š”๊ฐ€?/์ง€๊ธˆ ์ด๊ฑธ ์กฐํšŒํ•ด๋„ ๋˜๋Š”๊ฐ€?)

์ด๋ฒˆ ์ˆ˜๋Šฅ ์„ฑ์ ํ‘œ ์ด์Šˆ์—์„œ ์‹ค์ˆ˜ํ•œ ๋ถ€๋ถ„์ด๋‹ค. ๋ณธ์ธ์€ ์ปค๋จธ์Šค์—์„œ ์ผํ•ด๋ดค๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ถ€๋ถ„์ด ์–ผ๋งˆ๋‚˜ ์ค‘์š”ํ•œ ์ผ์ธ์ง€ ์•ˆ๋‹ค. ์‚ฌ์‹ค PG ๊ฒฐ์ œ ๋ชจ๋“ˆ๋„ ๊ฐ€๊ฒฉํ•˜๊ณ  ์ƒํ’ˆ ์ •๋ณด, ํšŒ์›๋ฐ์ดํ„ฐ ๋ช‡ ๊ฐœ๋งŒ ๋ณด๋‚ด์ฃผ๋ฉด ๊ทธ๋ƒฅ ๊ทธ ๊ฐ’์— ๋งž์ถฐ ๋„์›Œ์ง„๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ํ•œ ์‚ฌ์šฉ์ž๊ฐ€ 200,000์›์งœ๋ฆฌ ์˜ท์„ ๊ตฌ๋งคํ–ˆ๋‹ค๊ณ  ์น˜์ž. ๋งŒ์•ฝ ์ด ์‚ฌ์šฉ์ž๊ฐ€ ์•…์˜์ ์ธ ๋ชฉ์ ์„ ๊ฐ€์ง€๊ณ  ์„œ๋ฒ„๋กœ ๋ณด๋‚ด๊ธฐ ์ „์— ํ•ด๋‹น ์ƒํ’ˆ์˜ ๊ฐ€๊ฒฉ ํ•„๋“œ๋งŒ 1,000์›์œผ๋กœ ๋ณ€์กฐํ•ด์„œ ๋ณด๋‚ธ๋‹ค๋ฉด? ์ฒ˜๋ฆฌ๋ฅผ ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ์—๋Š” ์‹ค์ œ 1,000์›๋งŒ ๊ฒฐ์ œ๊ฐ€ ์ง„ํ–‰๋  ๊ฒƒ์ด๊ณ , ์ฒ˜๋ฆฌ๋ฅผ ํ–ˆ๋‹ค๋ฉด ์ด ์‚ฌ๋žŒ์˜ ์ฃผ๋ฌธ ํ”Œ๋กœ์šฐ์— ๋ญ”๊ฐ€ ์ด์ƒ์ด ์žˆ์Œ์„ ์•Œ๊ณ  ๊ฒฐ์ œ ์‹คํ–‰์„ ๊ฑฐ๋ถ€ํ•˜๋Š” ์ฒ˜๋ฆฌ๋ฅผ ํ•ด๋‘์—ˆ์„ ๊ฒƒ์ด๋‹ค. ์‹ค์ œ๋กœ ์ด๋Ÿฐ ์‚ฌ๋ก€๋“ค์ด ๋ช‡ ๋ฒˆ ์žˆ์—ˆ๊ณ  ์ด ๋•Œ๋ฌธ์— ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž๋Š” ํ•ญ์ƒ ํด๋ผ์ด์–ธํŠธ์—์„œ ๋„˜์–ด์˜จ ํผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏฟ์„ ์ˆ˜ ์—†๋Š” ๊ฒƒ์ด๋‹ค.

์ด๋ฒˆ ์ˆ˜๋Šฅ ์„ฑ์ ํ‘œ ์ด์Šˆ๋„ ์„ฑ์ ํ‘œ๋ฅผ ์กฐํšŒํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋งŒ๋“ค์–ด๋‘๊ณ  ๊ธฐ์กด์˜ 2019๊นŒ์ง€๋งŒ(<= 2019) ์„œ๋ฒ„์—์„œ ๋ฐ›์„ ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •ํ•ด๋‘์—ˆ๋‹ค๋ฉด, 2020์ด ๋“ค์–ด์™€๋„ Exception ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ–ˆ์„ํ…๋ฐ๋ผ๋Š” ์•„์‰ฌ์›€์ด ๋‚จ๋Š”๋‹ค.

๋๋งบ์Œ

์ถœ์ฒ˜
[์‚ฌ์ง„ 1] ๋„ค์ด๋ฒ„ ์นดํŽ˜, ํฌ๋งŒํ•œ ์ˆ˜ํ•™ ์—ฐ๊ตฌ์†Œ

ํ”ผ๋“œ๋ฐฑ ํ”ผ๋“œ๋ฐฑ์€ ์•„๋ž˜์˜ ์ฝ”๋ฉ˜ํŠธ ํ˜น์€ iam@juneyoung.io๋กœ ๋ถ€ํƒ๋“œ๋ฆฐ๋‹ค.

์ˆ˜์ •๋‚ด์—ญ
2019.12.04 ์ˆ˜์ • ์ œ๋ชฉ์ด ๋‹ค์†Œ ์ž๊ทน์ ์ž„์„ ์ธ์ง€ํ•˜๊ณ  '๐Ÿง‘โ€๐Ÿ’ป ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž๋Š” ํด๋ผ์ด์–ธํŠธ๋ฅผ ๋ฏฟ์ง€ ๋งˆ๋ผโ€™์—์„œ '๐Ÿง‘โ€๐Ÿ’ป ์„œ๋ฒ„ ๊ฐœ๋ฐœ์ž๋Š” ํด๋ผ์ด์–ธํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏฟ์ง€ ๋งˆ๋ผโ€™๋กœ ๋ณ€๊ฒฝํ•จ.