Section4 Unit7 [Deploy] CI/CD - Proxy ์ค์ ํด HTTP ํต์ ํ๊ธฐ
๐ Chapter4. Proxy
• ํ๋ก์ ์๋ฒ๋ ํด๋ผ์ด์ธํธ๊ฐ ์์ ์ ๊ฑฐ์ณ ๋ค๋ฅธ ๋คํธ์ํฌ์ ์ ์ํ ์ ์๋๋ก ์ค๊ฐ์์ ๋๋ฆฌํด์ฃผ๋ ์๋ฒ๋ฅผ ๋งํ๋ค. ์๋ฒ์ ํด๋ผ์ด์ธํธ ์ฌ์ด์์ ๋๋ฆฌ๋ก ํต์ ์ ์ํํด์ฃผ๋ ๊ฒ์ proxy๋ผ๊ณ ํ๊ณ , ๊ทธ ๊ธฐ๋ฅ์ ํ๋ ์๋ฒ๋ฅผ proxy ์๋ฒ๋ผ๊ณ ํ๋ค.
• ๋ธ๋ผ์ฐ์ ์์ ๊ธฐ๋ณธ์ ์ผ๋ก API๋ฅผ ์์ฒญ ํ ๋์๋ ๋ธ๋ผ์ฐ์ ์ ํ์ฌ ์ฃผ์์ API ์ฃผ์์ ๋๋ฉ์ธ์ด ์ผ์นํด์ผ๋ง ๋ฐ์ดํฐ์ ์ ๊ทผ ํ ์ ์๋ค. ๋ง์ฝ ๋ค๋ฅธ ๋๋ฉ์ธ์์ API๋ฅผ ์์ฒญํด์ ์ฌ์ฉ ํ ์ ์๊ฒ ํด์ฃผ๋ ค๋ฉด CORS ์ค์ ์ด ํ์ํ๋ค.
โญ๏ธ ๊ณผ์ . Proxy ์ค์ ํด HTTP ํต์ ํ๊ธฐ
โ๏ธ Bare Minimum Requirement
๊ณผ์ 1 ๐api ์๋ฒ ์ด์ฉ
โ webpack dev server์ proxy ๊ธฐ๋ฅ์ ์ฌ์ฉํด ์ฐํํ์ฌ ์๋ต์ ๋ฐ๊ธฐ
๊ณผ์ 2 ๐api2 ์๋ฒ ์ด์ฉ
โ webpack dev server์ proxy ๊ธฐ๋ฅ ๋์ http-proxy-middleware์ proxy ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ proxy๋ฅผ ์ ์ฐํ ์ค์ ํด 2๊ฐ์ ๋๋ฉ์ธ์์ ๋ชจ๋ ์๋ต์ ๋ฐ์์ค๊ธฐ
โ api2์ ๊ด๋ จ๋ fetch ํจ์๋ฅผ ๋ง๋ค๊ณ , ์ปดํฌ๋ํธ๋ฅผ ํ๋ ์ด์ ๋ง๋ค์ด 2๊ฐ์ ๋๋ฉ์ธ์์ ๋ชจ๋ ์๋ต์ ๋ฐ์์ค๋์ง ํ ์คํธํ๊ธฐ
ํ๋ก์ ์ค์ ๊ณผ ์์ ๋ฅผ ์๋ ์ฒจ๋ถ๋ ํฌ์คํ ์ ์ ๋ฆฌํด๋์๋ค. ์ฒ์์๋ ์ด๋ ต๋ค๊ณ ์๊ฐํ ๊ฐ๋ ์ด์๋๋ฐ, ๊ณ์ ๋ค์ฌ๋ค๋ณด๋ ์กฐ๊ธ ์ต์ํด์ง ๊ฒ ๊ฐ๋ค ๐
๐ ์ค๋์ ํ๊ณ
์ค๋์ด ๊ณต์์ (?)์ผ๋ก๋ ๋ง์ง๋ง ์์ ์ด๋ค. ๋ด์ผ์ Section4 ํ๊ณ ์๊ฐ์ด๊ธฐ ๋๋ฌธ์ ๋ ์ด์์ ์ง๋๋ ์๋ค. ๋ง์ง๋ง ๊ณผ์ ๋ Proxy ์ค์ ์ ํตํด HTTP ํต์ ์ ํ๋ ๊ฒ์ด์๋ค. ํท๊ฐ๋ฆฌ๊ณ , ์ดํด๊ฐ ์์ ํ ๋์ง๋ ์์์ง๋ง ์ฌ์ฐจ์ ์ฐจ ์๋ฃ๋ ํ๋ค.
๋๋ฌด ๋ฌด๋์ด ์ฌ๋ฆ์ด๋ค. ๊ฐ๋งํ ์์์์ด๋ ๋ฅ๊ณ ์ตํด์ ๊ณต๋ถํ๋ ๊ฒ๋ ํ๋ ๋ ์จ๋ค. ์ด๋ฐ ๋ ์จ ์์ ์ ๋๋ก ์ง์คํ์ง ๋ชปํ ํ๋ฃจ๊ฐ ๋ ํ๋ ๋ค. ์๊ฐ์ด ์ ๋ง ๋๋ฌด ๋น ๋ฅด๋ค.