๋ณธ๋ฌธ์œผ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

๐Ÿ”— ์™ธ๋ถ€ ํ•™์Šต ์ž๋ฃŒ JavaScript SDK

์™ธ๋ถ€ ํ•™์Šต ์ž๋ฃŒ SDKโ€‹

๋ณธ ๋ฌธ์„œ๋Š” ์—˜๋ฆฌ์Šค์˜ ์™ธ๋ถ€ ํ•™์Šต ์ž๋ฃŒ๋ฅผ ๊ฐœ๋ฐœ์˜ ๊ฐ€์ด๋“œ๋ผ์ธ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด์™ธ์˜ ๋‹ค๋ฅธ ์งˆ๋ฌธ์— ๋Œ€ํ•ด์„œ๋Š” ์—˜๋ฆฌ์Šค๋กœ ์—ฐ๋ฝ ์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

SDK ์„ค์น˜ ๋ฐ ์ดˆ๊ธฐํ™”โ€‹

์™ธ๋ถ€ ํ•™์Šต ์ž๋ฃŒ Javascript SDK๋ฅผ npm ํŒจํ‚ค์ง€๋กœ ์„ค์น˜ํ•ด์ฃผ์„ธ์š”. ํ•ด๋‹น ํŒจํ‚ค์ง€๋Š” ์›น ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

# npm
npm install @eliceio/cdk --save

# yarn
yarn add @eliceio/cdk

ํด๋ž˜์Šคโ€‹

์„ค์น˜๋œ SDK์—์„œ ์ œ๊ณตํ•˜๋Š” ํด๋ž˜์Šค EliceCDK๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์™ธ๋ถ€ ํ•™์Šต์ž๋ฃŒ ๊ฐœ๋ฐœ์— ํ•„์š”ํ•œ ๋ฉ”์„œ๋“œ์™€ ์†์„ฑ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

import { EliceCDK } from '@eliceio/cdk';

const cdk = new EliceCDK({
baseUrl: 'https://api-external-contents.elice.io',
});

์ดˆ๊ธฐํ™”์— ์ œ๊ณตํ•˜๋Š” ์˜ต์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

์ด๋ฆ„ํƒ€์ž…์„ค๋ช…
baseUrlstringElice ํ”Œ๋žซํผ API ์„œ๋ฒ„์˜ base URL์ž…๋‹ˆ๋‹ค. CORS ์ •์ฑ…์€ elice.io origin์— ๋Œ€ํ•œ ์š”์ฒญ๋งŒ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ ํ…Œ์ŠคํŠธํ•  ๊ฒฝ์šฐ ํ”„๋ก์‹œ ์„œ๋ฒ„๋ฅผ ๊ตฌ์„ฑํ•˜๊ฑฐ๋‚˜ ๋ธŒ๋ผ์šฐ์ €์˜ CORS ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

CORS ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•„๋ž˜ ๋‚ด์šฉ์„ ํ™•์ธ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•œ ์ดํ›„์—๋„ CORS ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๋ฉด, ํ„ฐ๋ฏธ๋„์—์„œ ์•„๋ž˜ ๋ช…๋ น์–ด๋กœ ๋ธŒ๋ผ์šฐ์ € CORS ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™”ํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

# Windows
chrome.exe --user-data-dir="C://chrome-dev-disabled-security" --disable-web-security --disable-site-isolation-trials

# macOS
open /Applications/Google\ Chrome.app --args --user-data-dir="/var/tmp/chrome-dev-disabled-security" --disable-web-security --disable-site-isolation-trials

# Linux
google-chrome --user-data-dir="~/chrome-dev-disabled-security" --disable-web-security --disable-site-isolation-trials