๋ฐฑ์๋ ๊ฐ๋ฐ ๋งฅ๋ฝ์์ ํ ํฐ์ ๋ฆฌ์์ค ๋ฐ API ์ ๋ํ ์ก์ธ์ค๋ฅผ ๋ณดํธํ๊ณ ๊ด๋ฆฌํ๋ ๊ฒ๊ณผ ๊ด๋ จ๋ ์ค์ํ ๊ฐ๋ ์ ๋๋ค. ํ ํฐ์ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์ ํน์ ๋ฆฌ์์ค ๋๋ ์์ ์ ๋ํ ์ธ์ฆ๋ ์ก์ธ์ค๋ฅผ ๋ํ๋ด๋ ๊ณ ์ ํ ์ํธํ ์์ฑ ๋ฌธ์์ด์ ๋๋ค. ํ ํฐ์ ์ฃผ๋ก ์ฌ์ฉ์๋ฅผ ์ธ์ฆํ๊ณ ๊ถํ์ ๋ถ์ฌํ๋ ์๋จ์ผ๋ก ์ฌ์ฉ๋์ด ๋ฐฑ์๋ ์ธํ๋ผ ๋ด์์ API endpoints, ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐ ์๋น์ค์ ๋ํ ๋ณด์ ์ก์ธ์ค๋ฅผ ์ฉ์ดํ๊ฒ ํฉ๋๋ค. ๊ถํ ๋ถ์ฌ, ์ธ์ฆ ๋ฐ ์ธ์ ๊ด๋ฆฌ์ ๊ฐ์ ๋ณด์ ๋ฉ์ปค๋์ฆ์ ๊ตฌํํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํ์ฌ ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ๋ฌด๋จ ์ก์ธ์ค๋ก๋ถํฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ณดํธํ๊ณ ๋ณด์ ์ํ์ ์ํํ๋ฉฐ ๋ฐ์ดํฐ ๊ฐ์ธ ์ ๋ณด ๋ณดํธ ๊ท์ ์ ์ค์ํ ์ ์๋๋ก ํฉ๋๋ค.
๋ฐฑ์๋ ๊ฐ๋ฐ์์ ๊ฐ์ฅ ๋๋ฆฌ ์ฑํ๋ ํ ํฐ ๊ธฐ๋ฐ ์ธ์ฆ ๋ฉ์ปค๋์ฆ ์ค ํ๋๋ JWT(JSON Web Token) ํ์ค์ ๋๋ค. JWT๋ RFC 7519์์ ์ ์ํ ๊ฐ๋ฐฉํ ํ์ค์ผ๋ก, JSON ๊ฐ์ฒด ํ์์ผ๋ก ๋น์ฌ์ ๊ฐ์ ์ ๋ณด๋ฅผ ์์ ํ๊ฒ ์ ์กํ๊ธฐ ์ํ ์ปดํฉํธํ๊ณ URL ์์ ํ๋ฉฐ ์์ฒด ํฌํจ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค. ์ด ์ ๋ณด๋ ๋น๋ฐ ํค, ์ํธํ ์๋ช ๋๋ ๊ณต๊ฐ/๊ฐ์ธ ํค ์์ ์ฌ์ฉํ์ฌ ๋์งํธ ์๋ช ๋๊ธฐ ๋๋ฌธ์ ํ์ธํ๊ณ ์ ๋ขฐํ ์ ์์ต๋๋ค. JWT๋ ํนํ RESTful API, SPA(๋จ์ผ ํ์ด์ง ์ ํ๋ฆฌ์ผ์ด์ ) ๋ฐ ๋ง์ดํฌ๋ก์๋น์ค ์ํคํ ์ฒ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ ์ต์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ฌ์ฉ์๋ฅผ ์ธ์ฆํ๊ณ API endpoints ์ ๋ํ ์ก์ธ์ค ๊ถํ์ ๋ถ์ฌํ๋ ๋ฐ ์์ฃผ ์ฌ์ฉ๋ฉ๋๋ค.
JWT์ ๊ตฌ์กฐ๋ ํค๋, ํ์ด๋ก๋ ๋ฐ ์๋ช ์ ์ธ ๊ฐ์ง base64url ์ธ์ฝ๋ฉ ๋ถ๋ถ์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ํค๋์๋ ์ผ๋ฐ์ ์ผ๋ก ์๋ช ์ ์ฌ์ฉ๋๋ ํ ํฐ ์ ํ ๋ฐ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๊ฐ์ ํ ํฐ์ ๋ํ ๋ฉํ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ฉ๋๋ค. ํด๋ ์์ด๋ผ๊ณ ๋ ํ๋ ํ์ด๋ก๋์๋ ์ ์ก๋๋ ์ค์ ์ ๋ณด๊ฐ ํฌํจ๋๋ฉฐ ์ฌ๊ธฐ์๋ ์ฌ์ฉ์๋ณ ๋ฐ์ดํฐ, ๊ถํ ๋ฐ ๊ธฐํ ๊ด๋ จ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ์ ์์ต๋๋ค. ์๋ช ์ ์ํธํ๋ ํค๋์ ํ์ด๋ก๋๋ฅผ ๋น๋ฐ ๋๋ ๊ฐ์ธ ํค์ ์ฐ๊ฒฐํ์ฌ ์์ฑ๋์ด ํ ํฐ์ ๋ฌด๊ฒฐ์ฑ๊ณผ ์ ๋ขฐ์ฑ์ ๋ณด์ฅํฉ๋๋ค. ํ ํฐ์ ์๋ช ์ ์ฑ๊ณต์ ์ผ๋ก ํ์ธํ๋ฉด ์์ ์๋ ํ์ด๋ก๋ ๋ด์ ํด๋ ์์ ์ ๋ขฐํ๊ณ ์ด๋ฅผ ์ฌ์ฉํ์ฌ ์์ฒญ๋ ๋ฆฌ์์ค ๋๋ ์๋น์ค์ ๋ํ ์ก์ธ์ค ๊ถํ์ ๋ถ์ฌํ ์ ์์ต๋๋ค.
ํ ํฐ ๊ธฐ๋ฐ ์ธ์ฆ์ ํฅ์๋ ๋ณด์, ํ์ฅ์ฑ ๋ฐ ์ต์ ์์ฉ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ ๊ธฐ์ ๊ณผ์ ํธํ์ฑ๊ณผ ๊ฐ์ ๊ธฐ์กด ์ฟ ํค ๊ธฐ๋ฐ ์ธ์ฆ์ ๋นํด ๋ช ๊ฐ์ง ์ด์ ์ ์ ๊ณตํฉ๋๋ค. ๋ฐฑ์๋ ์์คํ ์ ์ํ ๋น์ ์ฅ ํ ํฐ์ ์ฌ์ฉํ์ฌ ์๋ฒ์ ์ ์ฅ๋๋ ์ธ์ ๊ด๋ จ ๋ฐ์ดํฐ์ ์์ ์ต์ํํ์ฌ ์ฑ๋ฅ์ ํฅ์ํ๊ณ ์ ์ฌ์ ์ธ ๋ณด์ ์ํ์ ์ํฅ์ ์ค์ผ ์ ์์ต๋๋ค. ๋ํ ํ ํฐ ๋ด ๊ถํ์ ์ธ๋ถ์ฑ์ ์ธ๋ถํ๋ ์ก์ธ์ค ์ ์ด๋ฅผ ๊ฐ๋ฅํ๊ฒ ํ์ฌ ๋ฐฑ์๋ ๊ฐ๋ฐ์๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์์ ์ฌ์ฉ์ ๊ถํ์ ์ ํํ๊ฒ ์ ์ํ๊ณ ๊ด๋ฆฌํ ์ ์๋๋ก ํฉ๋๋ค.
AppMaster no-code ํ๋ซํผ์ ์ฌ์ฉํ์ฌ ๋ฐฑ์๋ ๊ฐ๋ฐ ํ๋ก์ธ์ค ๋ด์์ ํ ํฐ ๊ธฐ๋ฐ ์ธ์ฆ ํตํฉ์ ๊ฐ์ํํ ์ ์์ต๋๋ค. AppMaster ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์๊ฐ์ ๋์์ธ, BP(Business Process) ๋์์ด๋๋ฅผ ํตํ ๋น์ฆ๋์ค ๋ก์ง ์์ฑ, REST API ๋ฐ WSS endpoints ์ ์์ ๊ฐ์ ํ ํฐ ๊ธฐ๋ฐ ๋ณด์ ๋ฉ์ปค๋์ฆ์ ๊ตฌํ์ ๋จ์ํํ๋ ํฌ๊ด์ ์ธ ๋๊ตฌ ๋ฐ ๊ธฐ๋ฅ ์ ํ๊ตฐ์ ์ ๊ณตํฉ๋๋ค. AppMaster ๋ก ์์ฑ๋ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ ฅํ ์ฑ๋ฅ๊ณผ ๋ฐ์ด๋ ํ์ฅ์ฑ์ผ๋ก ์๋ ค์ง Go(golang) ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌ์ถ๋์ด ์ํฐํ๋ผ์ด์ฆ ๋ฐ ๊ณ ๋ถํ ์ฌ์ฉ ์ฌ๋ก์ ๋งค์ฐ ์ ํฉํฉ๋๋ค.
๋ํ AppMaster ํ ํฐ ๋ฐ ๊ด๋ จ ๋ฉํ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ์ํ ๊ธฐ๋ณธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์ฌ์ฉํ ์ ์๋ PostgreSQL๊ณผ ๊ฐ์ ๋๋ฆฌ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํํ๊ฒ ํตํฉํ ์ ์์ต๋๋ค. ๋ํ ์ด ํ๋ซํผ์ ์๋ฒ endpoints ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง์ ๋ํ ๋ฌธ์ ๋ฐ ๋ง์ด๊ทธ๋ ์ด์ ์คํฌ๋ฆฝํธ ์์ฑ์ ์ง์ํ์ฌ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ต์ํ์ ๊ธฐ์ ๋ถ์ฑ๋ก ํจ๊ณผ์ ์ผ๋ก ์ ์ง ๊ด๋ฆฌ๋๊ณ ๋ฐฐํฌ๋๋๋ก ํฉ๋๋ค.
AppMasterno-code ํ๋ซํผ๊ณผ ํ ํฐ ๊ธฐ๋ฐ ์ธ์ฆ ๊ธฐ์ ์ ํ์ฉํจ์ผ๋ก์จ ๋ฐฑ์๋ ๊ฐ๋ฐ์๋ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ํฌ๊ฒ ๊ฐ์ํํ๊ณ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ณด์, ํ์ฅ์ฑ ๋ฐ ์ฑ๋ฅ์ ๊ฐ์ ํ ์ ์์ต๋๋ค. ์ด ๊ฐ๋ ฅํ ์กฐํฉ์ ํตํด ์๊ธฐ์ ์์ ๋๊ธฐ์ ์ ์ด๋ฅด๊ธฐ๊น์ง ๋ค์ํ ๋ฒ์์ ๊ณ ๊ฐ์ด ๊ณ ์ ํ ์๊ตฌ ์ฌํญ์ ํจ๊ณผ์ ์ผ๋ก ์ถฉ์กฑํ๊ณ ์ ์ฌ์ ์ธ ๋ณด์ ์ํ์ ์ํํ๋ ๊ณ ํ์ง ์ํํธ์จ์ด ์๋ฃจ์ ์ ๊ฐ๋ฐํ ์ ์์ต๋๋ค.