๊ฐœ๋ฐœ์ผ์ง€-8 [๐Ÿ‘จโ€๐ŸณํŒ๋งค์ž ๋„๋ฉ”์ธ API ํ…Œ์ŠคํŠธ]

๊น€์„ฑ์ธยท2023๋…„ 9์›” 10์ผ
0

ํŒ๋งค์ž ๋„๋ฉ”์ธ ๊ธฐ๋Šฅ ์ •์˜ ํฌ์ŠคํŒ…


์•ž์„œ ํฌ์ŠคํŒ…ํ–ˆ๋˜ ํŒ๋งค์ž ํšŒ์›๊ด€๋ จ API๋ฅผ ์ •๋ฆฌํ•˜๋ฉฐ, ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋„๋ก ํ•˜๊ฒ ๋‹ค.

API ํ…Œ์ŠคํŠธ ๋ชฉ๋ก


ํ”„๋กœ์„ธ์Šค ์ง„ํ–‰ ์ˆœ์„œ

  1. ํšŒ์› ๊ฐ€์ž… ์ „ ์•ฝ๊ด€ ๋™์˜
  2. SMS๋ฅผ ํ†ตํ•œ ๋ณธ์ธ์ธ์ฆ
  3. ๋ณธ์ธ์ธ์ฆ ์™„๋ฃŒ ํ›„ ํšŒ์› ์ •๋ณด ์ž…๋ ฅ (์•„์ด๋””, ๋น„๋ฐ€๋ฒˆํ˜ธ, ์ด๋ฉ”์ผ)
  4. ํšŒ์›๊ฐ€์ž… ์š”์ฒญ ํ›„ ๊ฐ€์ž… ์™„๋ฃŒ ํ™•์ธ

1. [Post] /jat/sellers/authy

ํŒ๋งค์ž ํšŒ์› ๊ฐ€์ž…์‹œ ์ธ์ฆ๋ฒˆํ˜ธ ์š”์ฒญ

1-1) SMS ์ธ์ฆ ํ™”๋ฉด

  • ํšŒ์›๊ฐ€์ž…ํ•˜๊ธฐ์ „ SMS๋ฅผ ํ†ตํ•ด ๋ณธ์ธ์ธ์ฆ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•จ.
  • ํ•ด๋‹น ํ™”๋ฉด์„ ์ธ์ฆํ•ด์•ผ ํšŒ์›์ •๋ณด๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ํ™”๋ฉด์œผ๋กœ ๋„˜์–ด๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก ๊ตฌํ˜„ํ•˜๊ธฐ๋กœ ํ•˜์˜€๋‹ค.

1-2) Postman API ์š”์ฒญ

  • API ์š”์ฒญ ํ›„ ์ž‘์„ฑํ•œ ๋‚˜์˜ ๋ฒˆํ˜ธ๋กœ ์ธ์ฆ๋ฒˆํ˜ธ๊ฐ€ ์ „์†ก๋˜์—ˆ๋‹ค.

1-3) ์„œ๋ฒ„ ๋กœ๊ทธ

  • ์„œ๋ฒ„๋กœ๊ทธ๋ฅผ ํ†ตํ•ด CoolSMS API๊ฐ€ ์ •์ƒ ์ž‘๋™ํ•œ ๊ฒƒ์„ ํ™•์ธ.

2. [Post] /jat/sellers/authy-pass

ํŒ๋งค์ž ํšŒ์›๊ฐ€์ž… ์ธ์ฆ๋ฒˆํ˜ธ ์ˆ˜์‹  ํ›„ ํ™•์ธ

2-1) ์ธ์ฆ๋ฒˆํ˜ธ ์š”์ฒญ

  • 5 ๋ถ„์ด๋‚˜ ์ง€๋‚˜์„œ ๋‹ค์‹œ ์š”์ฒญํ–ˆ๋”๋‹ˆ ์œ ํšจํ•˜์ง€ ์•Š์€ ์ธ์ฆ๋ฒˆํ˜ธ๋กœ ์ฒ˜๋ฆฌ ๋˜์–ด๋ฒ„๋ ธ๋‹ค.
  • ๋‹ค์‹œ ์ธ์ฆ๋ฒˆํ˜ธ๋ฅผ ๋ฐ›์ž๋งˆ์ž ์š”์ฒญํ™•์ธ์„ ํ•˜์˜€๋”๋‹ˆ ์ •์ƒ์‘๋‹ตํ•จ.

2-2) DB ํ™•์ธ

  • DB์˜ SMSํ…Œ์ด๋ธ”์—๋„ ๊ฐ’์ด ์ •์ƒ์ ์œผ๋กœ ๋“ฑ๋ก ๋˜์–ด ๋กœ์ง์ด ์ˆ˜ํ–‰๋˜๋Š”๊ฒƒ์„ ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ์ด๋Š” ๋‚˜์ค‘์— Redis๋กœ ๋Œ€์ฒดํ•˜์—ฌ์„œ ๊ฐ’์„ 3๋ถ„์•ˆ์— ์ž„์‹œ๋กœ๋งŒ ๊ฐ€์ง€๊ณ  ์žˆ๋„๋ก ํ•  ๊ฒƒ์ž„..

3. [Post] /jat/sellers

ํŒ๋งค์ž ํšŒ์›๊ฐ€์ž… ์š”์ฒญ

3-1) Postman API ์š”์ฒญ

  • ์ •์ƒ์ ์œผ๋กœ ์„œ๋ฒ„์— ์š”์ฒญ์ด ์ž˜ ๋˜๊ณ , ๊ฐ€์ž…๋‚ ์งœ์™€ ํ•จ๊ป˜ ์„œ๋ฒ„์—์„œ ๊ธฐ๋ณธ ์ •๋ณด๊ฐ€ ์‘๋‹ต์‘๋กœ ์˜ค๊ฒŒ๋œ๋‹ค.

3-2) DBํ™•์ธ

  • ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ํšŒ์›์ •๋ณด๊ฐ€ DB์— ์ž˜ ์ €์žฅ๋˜๊ณ , ํ…Œ์ด๋ธ”์—๋Š” ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ์•”ํ˜ธํ™”๋˜์–ด ์ €์žฅ๋œ๋‹ค.

4. [Post] /jat/sellers/login

ํšŒ์›๊ฐ€์ž… ์™„๋ฃŒ ํ›„ ๋กœ๊ทธ์ธ

4-1) Postman API ์š”์ฒญ

  • ๋กœ๊ทธ์ธ๊ณผ ํ•จ๊ป˜ ์„œ๋น„์Šค์— ์ด์šฉํ•  jwt ํ† ํฐ์ด ์‘๋‹ต์œผ๋กœ ๋ฐ˜ํ™˜๋œ๋‹ค.
  • ์•„์ง ํšŒ์›๊ฐ€์ž…๋งŒํ•˜๊ณ  ๊ฐ€๊ฒŒ๋“ฑ๋ก๋“ฑ ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•  ์ค€๋น„๊ฐ€ ๋งˆ์น˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— store_name, store_status๋“ฑ์— ์•„๋ฌด๊ฐ’๋„ ์—†์ด ๋„˜์–ด์˜จ๋‹ค.
  • jwt ํ† ํฐ์€ ํšŒ์›๊ฐ€์ž… ๋ง๊ณ  ๋‹ค๋ฅธ API ์š”์ฒญ ์‹œ์— ๋ฐ˜๋“œ์‹œ ํ—ค๋”์— ๋ชจ๋‘ ๋ณด๋‚ด์ค˜์•ผ SecurityConfig์˜ ํ•„ํ„ฐ์—์„œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•ด์ค€๋‹ค.

5. [Post] /jat/sellers/lost

์•„์ด๋”” ์ฐพ๊ธฐ, ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ • ์ „ ๋ณธ์ธ์ธ์ฆ

  • ์•„์ด๋””, ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐพ๊ธฐ๋ฅผ ์œ„ํ•œ ์ธ์ฆ๋ฒˆํ˜ธ ์š”์ฒญ์ด๋‹ค.

6. [Post] /jat/sellers/id-find, /jat/sellers/pw-find

์•„์ด๋”” ์ฐพ๊ธฐ, ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ • ๋ณธ์ธ์ธ์ฆ ์™„๋ฃŒ

  • SMS๋กœ ์ˆ˜์‹ ๋ฐ›์€ ์ธ์ฆ๋ฒˆํ˜ธ๋ฅผ ๋‹ค์‹œ ์ž…๋ ฅํ–ˆ์„ ๋•Œ
  • ์•„์ด๋”” ์ฐพ๊ธฐ๋Š” ๋ณธ์ธ์ด ๊ฐ€์ž…ํ•œ ์•„์ด๋””๊ฐ€ ๋‚˜์˜ค๊ณ ,
  • ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ •์€ ์žฌ์„ค์ • ํŽ˜์ด์ง€์—์„œ ์‚ฌ์šฉํ•  JWT ํ† ํฐ์ด ์‘๋‹ต์œผ๋กœ ๋„˜์–ด์˜จ๋‹ค.

7. [Patch] /jat/sellers/pw-restore

๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ •

7-1) ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ •(๋ณ€๊ฒฝ)

  • ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ @bcde12345 -> @bcde3333 ์œผ๋กœ ๋ณ€๊ฒฝํ•˜์˜€๋‹ค.

7-2) ๋‹ค์‹œ ๋กœ๊ทธ์ธ

  • ๋‹ค์‹œ ๋กœ๊ทธ์ธํ•˜๊ฒŒ ๋˜๋ฉด, ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋ฐ”๋€Œ์–ด์„œ ๋กœ๊ทธ์ธ์ด ๋˜์ง€ ์•Š๋Š”๋‹ค.
  • ๋ฐ”๋€ ๋น„๋ฐ€๋ฒˆํ˜ธ๋กœ ๋‹ค์‹œ ๋กœ๊ทธ์ธํ•˜๋ฉด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ž˜ ๋จ!

์ด์ƒ ํŒ๋งค์ž ํšŒ์› ๊ด€๋ จ ๋„๋ฉ”์ธ์— ๋Œ€ํ•œ API ํฌ์ŠคํŒ…์„ ๋ชจ๋‘ ์™„๋ฃŒํ•˜์˜€๋‹ค. SMS๋‚˜ Security ์ธ๊ฐ€์„ค์ •, JWT ๋‚ด๋ถ€์— ๋“ค์–ด์žˆ๋Š” ์‹๋ณ„ ๊ฐ’๋“ฑ์— ๋Œ€ํ•œ ํฌ์ŠคํŒ…์€ ๋‚˜์ค‘์— ํ•ด์•ผ๊ฒ ๋‹ค.

๋‹ค์Œ๋ถ€ํ„ฐ๋Š” ํ…Œ์ŠคํŠธ๋ฅผ ๊ฐ ๋„๋ฉ”์ธ API ํฌ์ŠคํŒ…์— ๋ฐ”๋กœ ์ž‘์„ฑํ•ด์•ผ๊ฒ ๋‹ค..ใ…Žใ…Ž

profile
๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฟˆ์ธ 25์‚ด ๋Œ€ํ•™์ƒ์ž…๋‹ˆ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€