ํ๋ฐํธ์๋ ์ํํธ์จ์ด ๊ฐ๋ฐ์ ๋งฅ๋ฝ์์ ํ๋ฐํธ์๋ ์น API๋ ํด๋ผ์ด์ธํธ ์ธก ์น ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ๋ค์ํ ์น ์๋น์ค, ๋ฆฌ์์ค ๋๋ ์ธ๋ถ ์์คํ ๊ฐ์ ์ํํ ์ํธ ์์ฉ์ ์ด์งํ๋ ์ฌ์ ์ ์๋ ๊ธฐ๋ฅ, ๋ฐฉ๋ฒ, ํ๋กํ ์ฝ ๋ฐ ๋๊ตฌ ๋ชจ์์ ์๋ฏธํฉ๋๋ค. ์ด๋ฌํ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ์๋ ๊ธฐ๋ณธ ๊ตฌํ์ด๋ ๋ฌธ์ ์ ์์คํ ๋ณต์ก์ฑ์ ๋ํ ์ฌ์ธต์ ์ธ ์ดํด ์์ด๋ ์ ๋ฌธ์ํ๋ ์ง์ ์ ์ธํธ๋ฅผ ๋ ธ์ถํ์ฌ ํน์ ๊ธฐ๋ฅ์ด๋ ๋ฐ์ดํฐ์ ์ก์ธ์คํ๊ณ ์กฐ์ํ ์ ์์ต๋๋ค. ํ๋ฐํธ์๋ ์น API๋ฅผ ํ์ฉํจ์ผ๋ก์จ ์น ๊ฐ๋ฐ์๋ DOM ์กฐ์, ์๋ฒ ์ธก API์์ ํต์ , ์์น ์ ๋ณด, ์น ์ ์ฅ์, ๋ฉํฐ๋ฏธ๋์ด ๊ธฐ๋ฅ ๋ฐ ์ค์๊ฐ ์ ๋ฐ์ดํธ๋ฅผ ํฌํจํ๋ ์ด์ ๊ตญํ๋์ง ์๋ ๊ด๋ฒ์ํ ๊ธฐ๋ฅ์ ํ์ฉํ ์ ์์ต๋๋ค.
๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ์ํด ์ค๊ณ๋ no-code ํ๋ซํผ์ธ AppMaster ์๊ฐ์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค ๋ฐ ๋น์ฆ๋์ค ๋ก์ง ๋์์ด๋๋ฅผ ํตํด ์น API์ ์ํธ ์์ฉํ๋ ํ๋ฐํธ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค๊ธฐ ์ํ ํฌ๊ด์ ์ธ ๋๊ตฌ ์ธํธ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ฌ์ฉ์๋ Vue.js, TypeScript ๋ฐ ๊ธฐํ ์ต์ฒจ๋จ ๊ธฐ์ ๊ณผ ๊ฐ์ ์ต์ ํ๋ ์์ํฌ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ๊ฒ ์์ฑ, ํ ์คํธ ๋ฐ ๋ฐฐํฌํ ์ ์์ต๋๋ค. AppMaster ์ ํ๋ฐํธ์๋ ์น API๋ ์ ๊ณ ํ์ค๊ณผ ์ผ์นํ๋ฏ๋ก ์์ฑ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ฑ๋ฅ, ๋ณด์ ๋ฐ ์ ๊ทผ์ฑ์ ๋ํ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ค์ํ๋ฉด์ ์ ์ง ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
ํ๋ฐํธ์๋ ์น API๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋ต์ฑ, ๋์ ๋ฐ ๋ํํ ๊ธฐ๋ฅ์ ํฅ์์์ผ ํ๋ ์น ๊ฐ๋ฐ์์ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. 2021๋ Stack Overflow์ ์กฐ์ฌ์ ๋ฐ๋ฅด๋ฉด ์น ๊ฐ๋ฐ์์ 75% ์ด์์ด ํด๋ผ์ด์ธํธ ์ธก ์น ๊ฐ๋ฐ์ ์ฃผ๋ก ์ฌ์ฉ๋๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ธ JavaScript๋ฅผ ํ์ฉํ๊ณ ์์ผ๋ฉฐ, ์ด๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ ํ๋ฐํธ์๋ ์น API ์ฌ์ฉ์ ๋ํ ์์๊ฐ ๋๋ค๋ ๊ฒ์ ๋ํ๋ ๋๋ค. ๊ฐ๋ฐ์๋ฅผ ์ํ ์ถ์ํ ๊ณ์ธต์ ์ ๊ณตํจ์ผ๋ก์จ ์ด๋ฌํ API๋ ๊ฐ๋ฐ ์ํฌํ๋ก์ฐ๋ฅผ ๊ฐ์ํํ์ฌ ๋ณด๋ค ํจ์จ์ ์ด๊ณ ๋น์ฉ ํจ์จ์ ์ธ ํ๋ก์ธ์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.
๋๋ฆฌ ์ฌ์ฉ๋๋ ํ๋ฐํธ์๋ ์น API์ ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- Fetch API: HTTP ์์ฒญ ๋ฐ ์๋ต์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๊ฐ๋ ฅํ๊ณ ์ ์ฐํ ์ต์ API๋ก, ์๋ฒ์์ ๋ฆฌ์์ค๋ฅผ ๊ฐ์ ธ์ค๋ ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ํํ๊ณ ์ด์ ๋ฒ์ ์ธ XMLHttpRequest API์ ๋นํด ํฅ์๋ ์ค๋ฅ ์ฒ๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- DOM(๋ฌธ์ ๊ฐ์ฒด ๋ชจ๋ธ) API: ์น ๊ฐ๋ฐ์ ํ์ ๊ตฌ์ฑ ์์๋ก, ๊ฐ๋ฐ์๊ฐ HTML ๋๋ XML ๋ฌธ์ ๋ด์ ๊ณ์ธต ๊ตฌ์กฐ ๋ฐ ์์๋ฅผ ํ์, ์กฐ์ ๋ฐ ์ํธ ์์ฉํ ์ ์๋๋ก ํด์ค๋๋ค.
- Geolocation API: ์ฌ์ฉ์์ ์ง๋ฆฌ์ ์์น ๋ฐ์ดํฐ(๊ถํ ํฌํจ)์ ๋ํ ์ก์ธ์ค๋ฅผ ์ ๊ณตํ์ฌ ๊ฐ๋ฐ์๊ฐ GPS, Wi-Fi ๋ฐ ๊ธฐํ ๋ฐ์ดํฐ ์์ค๋ฅผ ํ์ฉํ์ฌ ์์น ์ธ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค ์ ์๋๋ก ํฉ๋๋ค.
- ์น ์คํ ๋ฆฌ์ง API: ํด๋ผ์ด์ธํธ์ธก์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ๊ฒ์ํ๊ธฐ ์ํ ๊ฐ๋จํ๋ฉด์๋ ๊ฐ๋ ฅํ ๋ฉ์ปค๋์ฆ์ผ๋ก, ๊ฐ๋ฐ์๋ ์ด๋ฅผ ํตํด ๋ธ๋ผ์ฐ์ ์ธ์ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ์งํ๊ณ ๋ณด๋ค ๋ฐ์์ฑ์ด ๋ฐ์ด๋๊ณ ๊ฐ์ธํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค์ด ์ฌ์ฉ์ ๊ฒฝํ์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
- ์น ์๋ฆผ API: ์น ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ฌ์ฉ์ ๋์์ ๋ฐ๋ผ ์ค์ํ ์ ๋ฐ์ดํธ๋ ์ด๋ฒคํธ์ ๋ํด ์ฌ์ฉ์์๊ฒ ์๋ฆฌ๋ ํธ์ ์๋ฆผ์ ๋ณด๋ผ ์ ์๋๋ก ํฉ๋๋ค.
๋ํ ํ๋ฐํธ์๋ ์น API๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ด ์ธ๋ถ ๋ฐ ๋ด๋ถ ๋ชจ๋์์ ๋ค์ํ ์์คํ ์ด๋ ๊ตฌ์ฑ ์์ ๊ฐ์ ํต์ ์ ์ด์งํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๊ฐ๋ฐ์๋ WebSockets API๋ฅผ ํ์ฉํ์ฌ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ์ ์ค์๊ฐ ์๋ฐฉํฅ ํต์ ์ฑ๋์ ๊ตฌ์ถํ์ฌ ์๋ต์ฑ์ด ๋ฐ์ด๋๊ณ ๋งค๋ ฅ์ ์ธ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ ์ ์์ต๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก CORS(Cross-Origin Resource Sharing)์ ๊ฐ์ ์ํธ ์ด์ฉ์ฑ ๋ฌธ์ ๋ CORS API๋ฅผ ์ฌ์ฉํ์ฌ ํจ๊ณผ์ ์ผ๋ก ํด๊ฒฐํ ์ ์์ต๋๋ค. CORS API๋ ๋๋ฉ์ธ ์ ์ฒด์์ ๋ฆฌ์์ค๋ฅผ ์์ฒญํ๋ ํ๋ก์ธ์ค๋ฅผ ๋จ์ํํ๊ณ ๋ณดํธํฉ๋๋ค.
๋ํ PWA(ํ๋ก๊ทธ๋ ์๋ธ ์น ์ฑ)์ ์ถํ์ผ๋ก ์ฐจ์ธ๋ ํ๋ฐํธ์๋ ์น API๊ฐ ๋ฑ์ฅํ์ฌ ๊ฐ๋ฐ์๊ฐ ๋ค์ดํฐ๋ธ์ ์ ์ฌํ ํ๊ฒฝ์ผ๋ก ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ ์ ์๊ฒ ๋์์ต๋๋ค. ์๋น์ค ์์ปค, ํธ์ API ๋ฐ ๋ฐฑ๊ทธ๋ผ์ด๋ ๋๊ธฐํ API๋ ๊ธฐ์กด ์น๊ณผ ๊ธฐ๋ณธ ๋ชจ๋ฐ์ผ ์ฑ ๊ฐ์ ๊ฒฉ์ฐจ๋ฅผ ํด์ํ๋ ์คํ๋ผ์ธ ๊ฐ๋ฅ, ๊ณ ์ฑ๋ฅ ๋ฐ ์ค์น ๊ฐ๋ฅํ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ ์ ์๋ ๊ธฐ์ ์ ์์ ๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ํ๋ฐํธ์๋ ์น API๋ ์น ๊ฐ๋ฐ ํ๊ฒฝ์ ํฌ๊ฒ ๊ฐํํ์ผ๋ฉฐ ๊ฐ๋ฐ์๊ฐ ์๋์ ์ผ๋ก ์ฝ๊ฒ ๋ชฐ์ ๊ฐ ์๊ณ ์ ์ฐํ๋ฉฐ ๋งค๋ ฅ์ ์ธ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค ์ ์๋๋ก ์ง์ํ์ต๋๋ค. AppMaster ์ no-code ํ๋ซํผ์ ๊ฐ๋ ฅํ ๋๊ตฌ, ํ๋ ์์ํฌ ๋ฐ ์์ฑ๋ ์์ค ์ฝ๋ ์ธํธ์ ํจ๊ป ์ด๋ฌํ API๋ฅผ ํ์ฉํ์ฌ ๊ธฐ์ ๊ณผ ๊ธฐ์ ์ด ํ์ฅ ๊ฐ๋ฅํ๊ณ ์ ์ง ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ฉฐ ํ์ฅ ๊ฐ๋ฅํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ํ๊ฒ ๊ฐ๋ฐ ๋ฐ ๋ฐฐํฌํ์ฌ ๊ฒฝ์ ์ฐ์๋ฅผ ํ๋ณดํ ์ ์๋๋ก ์ง์ํฉ๋๋ค. ์งํํ๋ ๋์งํธ ํ๊ฒฝ์์.