Community

๐Ÿ”งAPI ํ…Œ์ŠคํŠธ ๋„๊ตฌ ๋ชจ์Œ

API ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ๋ฅผ ์†Œ๊ฐœํ•˜๋Š” ๊ธ€์ด ์žˆ์–ด ๊ณต์œ ๋“œ๋ฆฝ๋‹ˆ๋‹ค. API ๋Š” Application Programming Interface ์˜ ์•ฝ์ž๋กœ ํ”„๋กœ๊ทธ๋žจ๋“ค์ด ์„œ๋กœ ํ†ต์‹ ํ•˜๊ฑฐ๋‚˜ ์ƒํ˜ธ์ž‘์šฉ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๋งค๊ฐœ์ฒด์ด์ž ์•ฝ์†์ด๋ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. API ํ…Œ์ŠคํŠธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ƒํ™ฉ์ผ ๋•Œ ์ง„ํ–‰ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. โœ”๏ธ Front-End ๋ฅผ ๊ตฌ์ถ•ํ•  ํ•„์š” ์—†์ด ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ API ํ…Œ์ŠคํŠธ๋ฅผ ํ•˜๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ โœ”๏ธ ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ˜น์€ ์‹œ์Šคํ…œ ๊ตฌ์ถ•์„ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  API ์„ฑ๋Šฅ ์œ ์ง€ ๋ฐ ๊ฐœ์„ ์„ ํ•˜๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ โœ”๏ธ ์œ ์ง€๋ณด์ˆ˜ ๊ธฐ๊ฐ„ ๋™์•ˆ ์งง์€ ์‹œ๊ฐ„ ๋‚ด์— API ์˜ ๋ฒ„๊ทธ๋‚˜ ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋Š”์ง€ ๊ฒ€์‚ฌํ•˜๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ ๊ฒ€์ƒ‰ํ•ด๋ณด์‹œ๋ฉด ๊ฝค ๋งŽ์€ API ํ…Œ์ŠคํŠธ ๋„๊ตฌ๋“ค์ด ์žˆ๋Š”๋ฐ์š”, ๊ณต์œ ๋“œ๋ฆฐ ๊ฒŒ์‹œ๊ธ€์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ 5๊ฐœ์˜ ๋„๊ตฌ๋“ค์„ ์†Œ๊ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ“Œ API ํ…Œ์Šคํ„ฐ(https://apitester.org/) - ๊ฑฐ์˜ ๋ชจ๋“  ์œ ํ˜•์˜ API ๋ฅผ ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ๋ชจ๋ฐ”์ผ ์•ฑ์„ ํ†ตํ•ด ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ๋ฌด๋ฃŒ์ž…๋‹ˆ๋‹ค. ๐Ÿ“Œ Postman(https://www.postman.com/) - ์ €๋„ ๊ฝค ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ํ…Œ์ŠคํŠธ๋„๊ตฌ๋กœ API ํ…Œ์ŠคํŠธ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ API ๋ฌธ์„œํ™”๋ฅผ ์œ„ํ•œ ๋„๊ตฌ๋กœ๋„ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ณ  ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. - ์›น์„ ์ง€์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฑฐ์˜ ๋ชจ๋“  ํ”Œ๋žซํผ๊ณผ ์šด์˜ ์ฒด์ œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์œ ๋ฃŒ ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.(์›” $12) ๐Ÿ“Œ Thunder ํด๋ผ์ด์–ธํŠธ(https://www.thunderclient.com/) - API ๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•œ ๊ฒฝ๋Ÿ‰ Rest ํด๋ผ์ด์–ธํŠธ ์ž…๋‹ˆ๋‹ค. - VScode ์˜ ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์ด๊ธฐ ๋•Œ๋ฌธ์— VScode ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ์ฐฝ์„ ์ „ํ™˜ํ•˜์ง€ ์•Š๊ณ ๋„ ์ž‘์—… ๊ณต๊ฐ„์—์„œ ๋ฐ”๋กœ API ๋ฅผ ํ…Œ์ŠคํŠธํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ๋‹จ์ˆœํ•˜๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฌ์šด UI ์™€ ๊ฐ€๋ณ๊ณ  ์Šคํฌ๋ฆฝํŠธ ์—†๋Š” ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. - ๋ฌด๋ฃŒ์ž…๋‹ˆ๋‹ค. ๐Ÿ“Œ Insomnia(https://insomnia.rest/) - Insomnia ๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ์ง์ ‘ REST, SOAP, GraphQL ๋ฐ GRPC ์š”์ฒญ์„ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ์ด๋ฅผ ํ†ตํ•ด ์ˆ˜๋™ API ํ…Œ์ŠคํŠธ๋ฅผ ์ž๋™ํ™”ํ•˜๊ณ  CI/CD ํ”„๋กœ์„ธ์Šค์™€ ํ†ตํ•ฉํ•˜์—ฌ Insomnia ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ API ํ…Œ์ŠคํŠธ ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ๋ฌด๋ฃŒ์ž…๋‹ˆ๋‹ค. ๐Ÿ“Œ SoapUI(https://www.soapui.org/) - SOAP/WSDL, REST, GraphQL, JMS ๋“ฑ์˜ API ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ณ  ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ๋„ ์ง„ํ–‰ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. - ๋ณด์•ˆ ์ทจ์•ฝ์„ฑ์ด ์žˆ๋Š”์ง€๋„ ๊ฒ€์‚ฌ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. - ๋ชจ๋“  ํ”Œ๋žซํผ๊ณผ ์šด์˜ ์ฒด์ œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - 14์ผ๋™์•ˆ ๋ฌด๋ฃŒ๋กœ ์ฒดํ—˜ํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•Œ๋ฆผ

์•Œ๋ฆผ์ด ์—†์Šต๋‹ˆ๋‹ค