Netilfy ์๋ฐ์คํฌ๋ฆฝํธ ํ๋ก์ ํธ ๋ฐฐํฌํ ๋ API key ์จ๊ธฐ๊ธฐ
API Key๋ฅผ ์จ๊ธฐ๋ ์ด์ ?
API Key์ ๋๋ถ๋ถ์ ๊ฐ์ธ๋ง๋ค ํค๊ฐ์ด ๋ค๋ฅด๊ณ , ํค ๊ฐ์ด ์ ์ฉ๋ ์ ์์ผ๋ฏ๋ก ๋ก์ปฌ๋ก ์์ ํ ๋๊ฐ ์๋ ๋ฐฐํฌํ ๋ ๊ผญ๊ผญ ์จ๊ฒจ์ผํ๋ค.
๋๋ถ๋ถ API Key๋ฅผ ์จ๊ธธ ๋ ํค์ ๋ํ .js ํ์ผ์ ์์ฑํ๊ณ , .gitignore์ .js ํ์ผ์ ์ ๋ ฅํด ๊นํ๋ธ์ commit๋์ง ์๋๋ก ๋ฐฉ์งํ ๊ฒ์ด๋ค.
ํ๋ Netilfy์ฒ๋ผ ๊น๊ณผ ์ฐ๋ํด ์ค์๊ฐ ๋ฐฐํฌ๊ฐ ์ด๋ฃจ์ด์ง๋ ๋ฐฉ์์์ ํด๋น Key๊ฐ์ ๊ฐ์ ธ์ค์ง ๋ชปํด ์์์น๋ชปํ ์ค๋ฅ๋ฅผ ๋ฐ์์ํจ๋ค.
๊ทธ๋ ๋ค๊ณ key๊ฐ์ ๊นํ๋ธ์ ๊ณต๊ฐํ๋ ๊ฑด ๊บผ๋ ค์ง๋ค.
์ฐ์ ์์ํ๊ธฐ ์์ ๊นํ๋ธ์ ์ ์ฅ๋์ด ์๋ API key๊ฐ์ด ๋ค์ด์๋ .jsํ์ผ์ด .gitignore์ ์ ์ฉ๋์ด์๋ ํ๋ก์ ํธ๋ฅผ Netlify์ ์ฐ๋ํ๊ณ ์งํํ์.
๊ฒ์ํ๋ฉด ์ฝ๊ฒ ์ ์ฉํ ์ ์์ ๊ฒ์ด๋ค.
Key ์จ๊ธฐ๊ธฐ
Netlify๋ Build command๋ฅผ ์ง์ํ๋ค.
Netlify์ ๋ค์ด๊ฐ ๋ฐฐํฌํ Site -> Site settings -> Bulid & deploy -> Build settings ์์๋ก ๋ค์ด๊ฐ๋ณด์.
๊ทธ๋ผ Build command๋ผ๊ณ ์ ํ์๋ ๋ถ๋ถ์ ์ฐพ์ ์ ์์ ๊ฒ์ด๋ค.
ํด๋น๋ถ๋ถ์ key๊ฐ์ ์ ์ฉํ ์๋ก์ด ํ์ผ์ ์์ฑํด์ ์ ์ฉํ๋ค๋ฉด? ํ๋ก์ ํธ๋ ์ ์์ ์ผ๋ก ๋์๊ฐ ๊ฒ์ด๋ค.
Netilfy๋ ๋ฐฐํฌํด์ ๋น๋ํ ๋ ์ฒซ ์์น๋ ํด๋น ํ๋ก์ ํธ์ index.html์ด ์๋ ์ ์ญ ์์น์ด๋ค.
์ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ณด๋ฉด configํด๋์ key.js ํ์ผ์ด .gitignore ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
//key.js
const KAKAO_KEY = 'bbddaf786e32df1d3123213213211bb28dfd6104d012';
export default KAKAO_KEY;
ํด๋น key.js ํ์ผ์ด ๊นํ๋ธ์ ์์ผ๋ฏ๋ก ๋ฐฐํฌํ ๋ ์ค๋ฅ๊ฐ ๋๋ค. Build command๋ฅผ ์ด์ฉํด ํด๊ฒฐํด๋ณด๋๋ก ํ์.
์ ๋๋ ํ ๋ฆฌ์ ๊ฐ์ ๊ฒฝ์ฐ์
cd js/config && echo -e "const KAKAO_KEY = 'key๊ฐ';\n\n export default KAKAO_KEY;" > key.js
์ ๊ฐ์ด ์ ๋ ฅํด์ค๋ค. ๋ณธ์ธ์ ํ๋ก์ ํธ์ ์๋ง๊ฒ ์์ ํ๋ฉฐ ์์ฑํด์ฃผ๋ฉด ๋๋ค.
์ฐ์ Netilfy๋ ์ฒ์ ๋น๋ํ ๋ ์์์ ์ index.html์ด ์๋ ์์น์ด๋ค. config์์ key.js๋ก ๋ฃ๋ ๊ฒ ๋ชฉํ์ด๋ฏ๋ก
cd js/config ๋ฅผ ํ๋ฉด ํด๋น ๋๋ ํ ๋ฆฌ๋ก ์ด๋๋๋ค. ๊ทธ ํ ์ฝ๋๋ฅผ ์์ฑํ๋ฏ์ด ์ ์ฒ๋ผ ์์ฑํ๋ฉด ๋๋ค. ๋ง์ง๋ง > ๋ ํด๋น ์ฝ๋๋ฅผ key.jsํ์ผ๋ก ๋ง๋ ๋ค๋ ์๋ฏธ์ด๋ค.
๊ฒฐ๊ตญ ์ฝ๋๋ฅผ ์์ฑํด ๋๊ฐ์ด ๋ง๋ ํ ๋๊ฐ์ ํ์ผ์ ์์ฑํ๋ command์ด๋ค.
cd js/config // cd/ js/config๋ก ์ด๋
&& echo -e "
const KAKAO_KEY = 'key๊ฐ';
export default KAKAO_KEY;" // ์ฝ๋ ์์ฑ
> key.js // key.js ํ์ผ ๋ง๋ฆ
์์ ๊ฐ์ด ๋์๋๋ฉฐ, ๋น๋ํ ๋ ํด๋น ์ปค๋งจ๋๊ฐ ์ ๋ ฅ๋์ด .gitignore๋์ด์๋ key.js๋ฅผ ๋๊ฐ์ด ๋ง๋ค ์ ์๊ณ , ์ค์ ๋ก ์ ๋์ํ๋ค.
๋ฆฌ์กํธ๋ ๋ทฐ ๋ฑ์ dotenv๋ฅผ ์ด์ฉํด .env ํ์ผ๋ก ์ฝ๊ฒ ํค๋ฅผ ์จ๊ธธ ์ ์์ง๋ง ๋ฐ๋๋ผ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๊ตฌ์ฑ๋ ํ๋ก ํธ์๋ ํ๋ก์ ํธ์์๋ ํค๋ฅผ ์จ๊ธฐ๊ธฐ ์ฝ์ง ์๋ค.
๋ฌผ๋ก ๋ ์ข์ ๋ฐฉ๋ฒ์ด ์์ ์ ์์ง๋ง ๊ฐ๋จํ ํ๋ก์ ํธ๋ฅผ ๋ฐฐํฌํ ๋ ์ฝ๊ฒ ํค๋ฅผ ์จ๊ธธ ์ ์๋ ๋ฐฉ๋ฒ์ ์์๋ดค๋ค.