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

๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๋ณด์•ˆ์˜ ์ฃผ์š” ๊ณ ๋ ค ์‚ฌํ•ญ ์ค‘ ํ•˜๋‚˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ„ ํ†ต์‹ ์„ ๋ณดํ˜ธํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค๋Š” API๋ฅผ ํ†ตํ•ด ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์„œ๋กœ ํ†ต์‹ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— ์ค‘๊ฐ„์ž ๊ณต๊ฒฉ, ์„œ๋น„์Šค ๊ฑฐ๋ถ€ ๊ณต๊ฒฉ, ์ฃผ์ž… ๊ณต๊ฒฉ ๋“ฑ ๋‹ค์–‘ํ•œ ์‚ฌ์ด๋ฒ„ ๊ณต๊ฒฉ์˜ ์ž ์žฌ์ ์ธ ํ‘œ์ ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ„ํ—˜์„ ์™„ํ™”ํ•˜๋ ค๋ฉด ๊ฐœ๋ฐœ์ž๋Š” HTTPS ๋ฐ TLS(์ „์†ก ๊ณ„์ธต ๋ณด์•ˆ)์™€ ๊ฐ™์€ ๋ณด์•ˆ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ์„ ์ฑ„ํƒํ•˜๊ณ , OAuth2 ๋ฐ JWT(JSON ์›น ํ† ํฐ)์™€ ๊ฐ™์€ ์ ์ ˆํ•œ ์ธ์ฆ ๋ฐ ๊ถŒํ•œ ๋ถ€์—ฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๊ตฌํ˜„ํ•˜๊ณ , ์•…์˜์ ์ธ ์•…์šฉ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์—„๊ฒฉํ•œ ์ž…๋ ฅ ๊ฒ€์ฆ์„ ๋ณด์žฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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

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

AppMasterno-code ํ”Œ๋žซํผ์—์„œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ๋•Œ ๊ฐœ๋ฐœ์ž๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋ณด์•ˆ ๊ธฐ๋ฐ˜ ์œ„์— ๊ตฌ์ถ•๋˜์—ˆ์Œ์„ ํ™•์‹ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ ๊ฐ•๋ ฅํ•œ Go ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์™€ Vue3 ํ”„๋ ˆ์ž„์›Œํฌ, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ JavaScript/TypeScript๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ AppMaster ์ตœ์‹  ๋ณด์•ˆ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ์ค€์ˆ˜ํ•˜๋Š” ๋งค์šฐ ์•ˆ์ „ํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ํ”Œ๋žซํผ์€ ์—”๋“œํˆฌ์—”๋“œ ์•”ํ˜ธํ™”, OAuth2 ๋ฐ JWT์™€ ๊ฐ™์€ ๊ฐœ๋ฐฉํ˜• ํ‘œ์ค€์„ ์‚ฌ์šฉํ•œ ๋ณด์•ˆ API ํ†ตํ•ฉ์„ ์ง€์›ํ•˜๊ณ  ์—…๊ณ„ ํ‘œ์ค€ ๋ณด์•ˆ ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ ์ง€์นจ์„ ์ค€์ˆ˜ํ•˜์—ฌ ํ”Œ๋žซํผ์—์„œ ์ƒ์„ฑ๋œ ๋ชจ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ตœ๋Œ€ํ•œ ์•ˆ์ „ํ•˜๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

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

๊ฐœ๋ฐœ ์ˆ˜๋ช… ์ฃผ๊ธฐ ์ „๋ฐ˜์— ๊ฑธ์ณ ์—„๊ฒฉํ•œ ๋ณด์•ˆ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ์ค€์ˆ˜ํ•จ์œผ๋กœ์จ AppMaster ์˜ ๊ณ ๊ฐ์€ ๊ธฐ๋ณธ ๋ณด์•ˆ ์ธํ”„๋ผ์— ๋Œ€ํ•œ ๊ฑฑ์ • ์—†์ด ๊ฐ•๋ ฅํ•œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฐ€์†ํ™”ํ•˜๊ณ  ๋น„์šฉ์„ ์ ˆ๊ฐํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋Š์ž„์—†์ด ์ง„ํ™”ํ•˜๋Š” ์œ„ํ˜‘ ํ™˜๊ฒฝ์— ์ง๋ฉดํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํƒ„๋ ฅ์„ฑ๊ณผ ์•ˆ์ •์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ์—๋„ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

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