๐Ÿ˜Ž

ํŒ€12 ๋ฐฑ์—”๋“œ ์ฝ”์นญ ์ผ์ง€

๊ธฐ์ž… ์ผ์ž
Jul 19, 2022 05:00 AM
๊ธฐ๋ก ์œ ํ˜•
์งˆ์˜์‘๋‹ต(์ฝ”์นญ)
๋‚ ์งœ
๋ฉ˜ํ† 
๋น…ํ† ๋ฆฌ
๋ถ„์•ผ
๋ฐฑ์—”๋“œ

8/3 ๋น…ํ† ๋ฆฌ ๋ฉ˜ํ† ๋‹˜ ์ฝ”์นญ ์ผ์ง€

Record Validation ์ค‘๋ณต ๋ฌธ์ œ

๋ฌธ์ œ ๋ถ„์„

  • ํŠน์ • ID๋ฅผ ๊ฐ€์ง„ Domain์˜ Record๊ฐ€ ์กด์žฌํ•˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๋กœ์ง์ด, ์„œ๋น„์Šค ํด๋ž˜์Šค๋“ค์ด ์ด์šฉํ•˜๋Š” Domain๋“ค์ด ๊ฒน์น˜๊ธฐ ๋•Œ๋ฌธ์— ์ค‘๋ณต๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.

๋ฉ˜ํ† ๋‹˜ ํ”ผ๋“œ๋ฐฑ

  • AOP์ด์šฉ
    • ํ•ด๋‹น Validation ์ฝ”๋“œ๋“ค์€ Domain์ด ๋‹ฌ๋ผ๋„ ๋™์ž‘ ๋ฐฉ์‹์€ ๊ฑฐ์˜ ์œ ์‚ฌํ•˜๊ธฐ์— AOP์™€ Generic ์„ ์ด์šฉํ•ด์„œ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.
  • ์ค‘๋ณต ๊ฐ์ˆ˜
    • ์ค‘๋ณต์˜ ์‚ฌํ•ญ์ด ํฌ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ค‘๋ณต์„ ๊ฐ์ˆ˜ํ•œ๋‹ค. ํ˜„์—…์—์„œ๋„ ์ด๋Ÿฐ ์ค‘๋ณต์„ ๊ฐ์ˆ˜ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.
  • ์‚ฌ์‹ค ์ด ๋ฌธ์ œ๋Š” ํŒ€ ๋ณ„๋กœ ์ œ๋Œ€๋กœ ์ •ํ•ด ๋†“์œผ๋ฉด ๋ฌธ์ œ๊ฐ€ ์•ˆ๋˜๋Š” ๊ณ„์—ด์˜ ๋ฌธ์ œ์ด๋‹ค. ์ด๋Ÿฐ ๊ณ ๋ฏผ์„ ํ•ด ๋ดค๋‹จ ๊ฒƒ ๋งŒ์œผ๋กœ๋„ ๋„์›€์ด ๋œ๋‹ค๊ณ  ํ•˜์‹ ๋‹ค.

๋Œ€๋Œ“๊ธ€ ๊ด€๋ จ ์ด์Šˆ

๋ฌธ์ œ ๋ถ„์„

  • ์šฐ๋ฆฌ ์„œ๋น„์Šค๋Š” ๋Œ€๋Œ“๊ธ€์„ 1๋‹จ๊ณ„์˜ ๊นŠ์ด๋กœ ์ž‘์„ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. (๋Œ€๋Œ“๊ธ€์˜ ๋Œ€๋Œ“๊ธ€์€ ๋ถˆ๊ฐ€๋Šฅ)
  • ์ดˆ๊ธฐ ๊ธฐํš์—์„œ๋Š” ๋Œ“๊ธ€ ํŽ˜์ด์ง€๋„ค์ด์…˜ ์‹œ ๋ถ€๋ชจ ๋Œ“๊ธ€๊ณผ ์ž์‹ ๋Œ“๊ธ€์„ ๊ฐ™์ด ์นด์šดํŠธ ํ•ด์„œ ๋ณด๋‚ด์ฃผ๊ธฐ๋กœ ํ–ˆ๋‹ค.
  • ๊ทธ๋Ÿด ๊ฒฝ์šฐ ๋‘ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค.
      1. ๋ถ€๋ชจ ๋Œ“๊ธ€๊ณผ ์ž์‹ ๋Œ“๊ธ€์˜ ๊ฒฝ์šฐ view ์ƒ ๋Œ“๊ธ€๋“ค์˜ ์ƒ์„ฑ ์‹œ๊ฐ„์ด ์ค‘๊ตฌ ๋‚œ๋ฐฉ์ด ๋  ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋ฅผ ์ •๋ ฌํ•˜๋ ค๋ฉด ๋ฐฑ์—์„œ ๋ ˆ์ฝ”๋“œ๋ฅผ ํ•˜๋‚˜ํ•˜๋‚˜ ์ฐพ์•„๊ฐ€๋ฉฐ ๋”ฐ๋กœ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์ค˜์•ผ ํ•  ๊ฒƒ์ด๋‹ค. โ†’ ๊ตฌํ˜„์˜ ๋‚œ์ด๋„ ์ƒ์Šน ๋ฐ ์„ฑ๋Šฅ ์ €ํ•˜
      1. ์œ„์— ์ด์–ด์„œ, ๋‹ค์Œ ํŽ˜์ด์ง€๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ์œ„ํ•œ ์ฟผ๋ฆฌ์—์„œ ์–ด๋–ค ์กฐ๊ฑด์„ ๊ฑธ ์ง€ ๋งˆ๋•…ํžˆ ์ƒ๊ฐ์ด ์ž˜ ๋‚˜์ง€ ์•Š๋Š”๋‹ค. โ†’ ๊ตฌํ˜„์˜ ๋‚œ์ด๋„ ๊ธ‰ ์ƒ์Šน
      1. View ์ƒ ๋Œ€๋Œ“๊ธ€ ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” ํŽ˜์ด์ง€๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒŒ ๋งž๋Š” ๊ธฐํš์ธ๊ฐ€? โ†’ ํ”„๋ก ํŠธ ๊ตฌํ˜„์˜ ๋‚œ์ด๋„ ์ƒ์Šน
  • ๋”ฐ๋ผ์„œ ํ”„๋ก ํŠธ์™€ ํ•ฉ์˜๋ฅผ ๋ดค๋‹ค.
    • ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ถ€๋ชจ ๋Œ“๊ธ€์˜ ๊ฐฏ์ˆ˜๋งŒ Count๋ฅผ ํ•ด์„œ ํŽ˜์ด์ง€๋„ค์ด์…˜์„ ์ง„ํ–‰ํ•œ๋‹ค.
    • ๋Œ€๋Œ“๊ธ€์˜ ๊ฒฝ์šฐ 10๊ฐœ ๋ฏธ๋งŒ์€ ๋‹ค ๋ณด๋‚ด์ฃผ๊ณ  10๊ฐœ ์ด์ƒ์˜ ๊ฒฝ์šฐ ๋ณด๋‚ด์ฃผ์ง€ ์•Š๋Š”๋‹ค.
    • ๋Œ€๋Œ“๊ธ€์˜ ๊ฐฏ์ˆ˜๋ฅผ ๋”ฐ๋กœ ๋ณด๋‚ด์ค€๋‹ค. (childCount)
    • view ์ƒ์—์„œ 10๊ฐœ ์ด์ƒ์˜ ๋Œ€๋Œ“๊ธ€์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋Œ“๊ธ€์€ ๋Œ€๋Œ“๊ธ€ ๋Œ€์‹  ๋”๋ณด๊ธฐ ๋ฒ„ํŠผ์ด ์กด์žฌํ•œ๋‹ค.
    • ํ•ด๋‹น ๋”๋ณด๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅผ ์‹œ ๋Œ€๋Œ“๊ธ€ ์กฐํšŒ API๋กœ ์š”์ฒญ์ด ์™€ ํ•ด๋‹น ๋Œ“๊ธ€์˜ ๋Œ€๋Œ“๊ธ€์„ return ํ•ด ์ค€๋‹ค.
  • ๋‘๋ฒˆ์งธ ์˜๊ฒฌ์ด ๊ดœ์ฐฎ์€๊ฐ€? ๊ทธ๋ฆฌ๊ณ  ์ฒซ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์„ ์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜๋Š” ์—†์„๊นŒ?

๋ฉ˜ํ† ๋‹˜ ํ”ผ๋“œ๋ฐฑ

  • ๋‘๋ฒˆ์งธ ์˜๊ฒฌ์ด ์˜คํžˆ๋ ค ๋” ๊ดœ์ฐฎ๋‹ค!
    • ์ฒซ๋ฒˆ์งธ์˜ ๊ฒฝ์šฐ ๋Œ€๋Œ“๊ธ€๋ถ€ํ„ฐ ๋…ธ์ถœ๋˜๋Š” ํŽ˜์ด์ง€๊ฐ€ ์กด์žฌํ•œ๋‹ค๋Š”๊ฒŒ ์ข‹์€ UI ๊ฐ™์ง€๋Š” ์•Š๋‹ค.
    • ๊ทธ๋Œ€๋กœ ์ง„ํ–‰ํ•ด๋„ ์ข‹์„๋“ฏ
  • ์ฒซ๋ฒˆ์งธ ์˜๊ฒฌ์˜ ๊ฒฝ์šฐ ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค์ฒ˜๋Ÿผ ์”จ๋ฆฌ์–ผ ๋„˜๋ฒ„ ์นผ๋Ÿผ์„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ถ”๊ฐ€ํ•ด์„œ ๊ด€๋ฆฌํ•˜๋ฉด ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์„๋“ฏ
    • ๋‹ค๋งŒ ๊ด€๋ฆฌ์˜ ์ถ”๊ฐ€์ ์ธ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋“ ๋‹ค. ๋Œ€๋Œ“๊ธ€์ด ๋‹ฌ๋ฆด ๋•Œ๋งˆ๋‹ค ์ „์ฒด์˜ ์”จ๋ฆฌ์–ผ ๋„˜๋ฒ„๋ฅผ ๊ด€๋ฆฌํ•ด ์ค˜์•ผ ํ•œ๋‹ค.
    • UI์ƒ์ด๋“  ๊ตฌํ˜„ ๋น„์šฉ, ์‹œ๊ฐ„์ด๋“  ํšจ์œจ์„ฑ์ด๋“  ๋‘๋ฒˆ์งธ ์˜๊ฒฌ์ด ๋” ๋‚ซ๋‹ค!
  • ๋‚˜์˜ ํ‰์†Œ ์ƒ๊ฐ๊ณผ ๊ฐ™์€ ๋ง์”€์„ ํ•ด์ฃผ์…จ๋‹ค.
    • ๊ธฐ์ˆ ์ƒ ์›ฌ๋งŒํ•œ ๊ตฌํ˜„์€ ๋‹ค ๊ฐ€๋Šฅํ•˜๋‹ค. ์•ˆ๋˜๋Š”๊ฑด ์—†๋‹ค. ๋‹ค๋งŒ ๋น„์šฉ๊ณผ ์‹œ๊ฐ„, ํšจ์œจ์„ฑ์˜ ์ฐจ์ด๋งŒ ์žˆ์„ ๋ฟ์ด๋‹ค.
       

์ข‹์•„์š” api ์„ค๊ณ„

๋ฌธ์ œ ๋ถ„์„

  • ์ข‹์•„์š” on, off API ๋ถ„๋ฆฌ/ํ†ตํ•ฉ์— ๋Œ€ํ•œ ๊ณ ๋ฏผ
  • ์ข‹์•„์š” on, off API๋ฅผ ํ•˜๋‚˜๋กœ ์ œ๊ณตํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ๋Š”๋ฐ, ๊ดœ์ฐฎ์€ ์„ค๊ณ„์ธ์ง€ ๊ถ๊ธˆํ•ด์„œ ์งˆ๋ฌธ๋“œ๋ฆผ

๋‹ต๋ณ€

  • ๊ดœ์ฐฎ๋‹ค๐Ÿ‘

8/10 ๋น…ํ† ๋ฆฌ ๋ฉ˜ํ† ๋‹˜ ๋น„๋™๊ธฐ ์งˆ๋ฌธ ํ”ผ๋“œ๋ฐฑ

๋ฌธ์ œ ์ƒํ™ฉ

๋ฉ˜ํ† ๋‹˜! ์งˆ๋ฌธ์ด ์žˆ์–ด ์Šฌ๋ž™ ๋‚จ๊น๋‹ˆ๋‹ค. ํ˜„์žฌ ์ธ์ฆ ๊ด€๋ จ ํ”„๋ก ํŠธํŒ€๊ณผ ์˜๊ฒฌ์ด ๊ฐˆ๋ฆฌ๋Š” ๋ถ€๋ถ„์ด ์žˆ์–ด์„œ ๋ฉ˜ํ† ๋‹˜ ์˜๊ฒฌ ์—ฌ์ญ™๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ์ƒํ™ฉ์€
  • ๋กœ๊ทธ์ธ ์‹œ access, refresh Token๊ณผ ์œ ์ € ์ •๋ณด ์ „๋‹ฌ
  • ํ”„๋ก ํŠธ์—์„œ๋Š” access Token์„ local storage์— ์ €์žฅ (refreshToken์€ ์–ด๋”” ์ €์žฅํ•˜๋Š”์ง€ ๋ชป ๋ฌผ์–ด๋ดค์Šต๋‹ˆ๋‹ค.)
  • ์œ ์ € ์ •๋ณด๋Š” ์ „์—ญ ์ƒํƒœ๋กœ ๊ด€๋ฆฌ
  • ์ƒˆ๋กœ๊ณ ์นจ ์‹œ ์œ ์ € ์ •๋ณด๊ฐ€ ๋‚ ๋ผ๊ฐ
  • ๋”ฐ๋ผ์„œ ํ”„๋ก ํŠธํŒ€์€ ์ƒˆ๋กœ๊ณ ์นจ๋งˆ๋‹ค ๋ฐ์ดํ„ฐ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” API ์™ธ์— ์ถ”๊ฐ€๋กœ accessToken์œผ๋กœ ์œ ์ € ์ •๋ณด๋ฅผ ์–ป์–ด์˜ค๋Š” API๋ฅผ ํ˜ธ์ถœํ•˜๊ธฐ๋ฅผ ํฌ๋งํ•จ
  • ๋ฐฑ์—”๋“œํŒ€์€ ์ƒˆ๋กœ๊ณ ์นจ๋งˆ๋‹ค API ํ˜ธ์ถœ์ด 2๋ฒˆ ์˜ค๋Š” ๊ฒƒ์ด ์œ ์ €๊ฐ€ ๋งŽ์•„์ง€๋ฉด ์„œ๋ฒ„์— ๋ถ€ํ•˜๊ฐ€ ์ปค์ง€๋Š” ์ข‹์ง€ ๋ชปํ•œ ๊ตฌ์กฐ์ด์ง€ ์•Š์„๊นŒ ์—ผ๋ คํ•จ
์ž…๋‹ˆ๋‹ค.๋”ฐ๋ผ์„œ ์ €ํฌ๊ฐ€ ์ƒ๊ฐํ•œ๊ฒŒ
  1. JWT token์—๋„ ์œ ์ € ์ •๋ณด๊ฐ€ ์žˆ๊ธฐ์— ์ƒˆ๋กœ๊ณ ์นจ ์‹œ local storage์˜ JWT token์„ ๋””์ฝ”๋”ฉํ•ด์„œ ๋‚ด๋ถ€์˜ ์œ ์ € ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ด
  1. ๋กœ๊ทธ์ธ ์‹œ ์œ ์ € ์ •๋ณด๋„ localstorage์— ์ €์žฅ. ์ƒˆ๋กœ๊ณ ์นจ ์‹œ ์œ ์ € ์ •๋ณด๋ฅผ local storage์—์„œ ๊ฐ€์ ธ์˜ด.
์ž…๋‹ˆ๋‹ค. ์ฒ˜์Œ์—” ์ €ํฌ ์˜๊ฒฌ์ด ๋” ํ•ฉ๋ฆฌ์ ์ด๋ผ ์ƒ๊ฐํ–ˆ๋Š”๋ฐ, ๋ณด์•ˆ ๊ด€๋ จํ•ด์„œ ํ”„๋ก ํŠธ์—์„œ JWT ๋ฅผ ๋””์ฝ”๋”ฉ ํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•œ์ง€, ์œ ์ € ์ •๋ณด๊ฐ€ ๋ณ€๊ฒฝ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด localstorage์— ์žˆ๋Š” ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ๋ณด๋‹ค ์ฐจ๋ผ๋ฆฌ api๋ฅผ ์ถ”๊ฐ€๋กœ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์ด ๋ณ€ํ™”์— ๋” ์ž˜ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ๋Š”๊ฒŒ ์•„๋‹Œ์ง€ ๋“ฑ์— ๋Œ€ํ•œ ์ƒ๊ฐ์„ ํ•˜๊ณ  ๋‚˜๋‹ˆ ์–ด๋–ค๊ฒŒ ์ •๋‹ต์ธ์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด์— ๋Œ€ํ•ด์„œ ๋ฉ˜ํ† ๋‹˜ ์˜๊ฒฌ์€ ์–ด๋– ํ•˜์‹ ์ง€๊ฐ€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค!
๋ง๋ถ™์—ฌ ๋ง์”€๋“œ๋ฆฌ์ž๋ฉด, ์œ ์ € ์ •๋ณด์—๋Š” ๋ณด์•ˆ์ƒ ๋ฏผ๊ฐํ•œ ์ •๋ณด๊ฐ€ ์—†๋‹ค๋Š” ๊ฐ€์ •์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”ผ๋“œ๋ฐฑ

๋ฉ˜ํ† ๋‹˜ :
์ƒํ˜๋‹˜์˜ ์˜๊ฒฌ๋Œ€๋กœ ํ•˜๋Š”๊ฒŒ ๋งž๋Š”๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค.
ํ† ํฐ์„ ๊ทธ๋ ‡๊ฒŒ ์“ฐ๋ ค๊ณ  ํ•˜๋Š”๊ฑฐ๋‹ˆ๊นŒ์š”! ๊ทธ๋ฆฌ๊ณ  ํ† ํฐ์—๋Š” ํŒจ์Šค์›Œ๋“œ ๊ฐ™์€ ์ •๋ณด๊ฐ€ ๋“ค์–ด๊ฐ€์ง€ ์•Š์œผ๋‹ˆ๊นŒ ํ”„๋ก ํŠธ์—”๋“œ์—์„œ ๋””์ฝ”๋”ฉ ํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค! ใ…Žใ…Žใ…Ž
์ž˜ ์ƒ๊ฐํ•˜์…จ๋„ค์š”!!
๋ฐ•์ƒํ˜ :
JWT๋ฅผ ๋””์ฝ”๋”ฉ ํ•˜๋Š”๋ฐ์— ์žˆ์–ด์„œ ๊ฑฐ๋ถ€๊ฐ์„ ๊ฐ€์งˆ ํ•„์š”๊ฐ€ ์—†๋‹ค๋Š” ๋ง์”€์ด์‹œ์ฃ ? ๋‹ต๋ณ€ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์ถ”๊ฐ€์ ์œผ๋กœ
์œ ์ € ์ •๋ณด์˜ ์ˆ˜์ •์ด ์žฆ๋‹ค๋ฉด ์ƒˆ๋กœ๊ณ ์นจ ์‹œ ์ƒˆ๋กœ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ฐฉ์‹์ด ๋” ๋‚˜์€์ง€,
์ƒˆ๋กœ๊ณ ์นจ ์‹œ API๋ฅผ ์ถ”๊ฐ€์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด ์„œ๋ฒ„์— ๊ณผ๋ถ€ํ™”๋ฅผ ์–ด๋А์ •๋„ ์ค„ ์ง€
์— ๋Œ€ํ•ด์„œ๋„ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค!
๋ฉ˜ํ† ๋‹˜ :
์ˆ˜์ •์ด ์žฆ๊ฒŒ ์ผ์–ด๋‚˜๋Š” ์œ ์ € ์ •๋ณด ์ „์ฒด๋ฅผ ํ† ํฐ์— ๋„ฃ์„๋ ค๊ณ  ํ•˜์‹œ๋Š”๊ฑด๊ฐ€์š”?
๋ฐ•์ƒํ˜ :
์Œ ๊ผญ ๊ทธ๋Ÿฐ๊ฑด ์•„๋‹Œ๋ฐ ํ”„๋ก ํŠธ ์ชฝ์—์„œ ๋‚˜์ค‘์— ์ „์—ญ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์œ ์ €์ •๋ณด๊ฐ€ ์ข€ ๋งŽ์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋ง์”€์„ ํ•˜์…”์„œ, ๋‚˜์ค‘์— ์–ด๋–ค ๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด๊ฐˆ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์•„์„œ ์—ฌ์ญค๋ดค์Šต๋‹ˆ๋‹ค.
๋ฉ˜ํ† ๋‹˜ :
์ „์—ญ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋ฉด์„œ ๋ฆฌํ”„๋ ˆ์‰ฌ ํ• ๋•Œ๋„ ๋‚จ์•„์žˆ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์—ฌ๋Ÿฌ๋ถ„์ด ์ด๋ฏธ ๋ง์”€ํ•˜์‹ ๋Œ€๋กœ, local storage๋ฅผ ์ด์šฉํ•ด๋‹ฌ๋ผ๊ณ  ์–˜๊ธฐํ•ด์ฃผ์„ธ์š”! ํ† ํฐ์—๋Š” id ๊ฐ’๋งŒ ๋“ค์–ด๊ฐ€๋Š”๊ฒŒ ์ผ๋ฐ˜์ ์ด๊ณ  ๋ณดํ†ต ํ”„๋ก ํŠธ์—์„œ๋„ ๋ฏผ๊ฐํ•œ ์ •๋ณด๊ฐ€ ์•„๋‹Œ๊ฒƒ๋“ค์€ local storage๋ฅผ ํ™œ์šฉํ•˜๋Š”๊ฒƒ์œผ๋กœ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฐ•์ƒํ˜ :
๋„ต ์ข‹์€ ์กฐ์–ธ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ๋ฉ˜ํ† ๋‹˜!