github์์ ํธ์คํ ๋๋ OpenApi ์ฌ์์ ์์ ๋ฅผ ์ด๋ ค๊ณ ํ๋๋ฐ ํ์ด์ง๋ฅผ ์ฐพ์ ์ ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
์กด์ฌํ์ง ์๋ ํ์ด์ง๋ก ์ด๋ํ๋ ค๊ณ ํ์ต๋๋ค! ๋ค๋ก ๋ฒํผ์ ๋๋ฅด๊ฑฐ๋ ๋์๋ณด๋(์๋ ๋ฒํผ)๋ก ๋์๊ฐ์ผ ํฉ๋๋ค.
ํ์ผ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. https://github.com/OAI/OpenAPI-Specification/blob/master/examples/v3.0/callback-example.yaml
apicurio ์ ์ฅ์์์ ์์ ๋ฅผ ์ด๋ ค๊ณ ์๋ํ์ง๋ง ์๋ํ์ต๋๋ค. https://github.com/Apicurio/apicurio-studio/blob/master/back-end/hub-api/src/test/resources/io/apicurio/hub/ api/beans/simple-api-3.0.json
ํ์ผ ์ ํ, json ๋ yaml ์
๋๊น?
์๋ ํ์ธ์ ํผ๋๋ฐฑ ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. ๋ถํํ๋ ํ์ฌ Apicurio๋ YAML ์ฝ๊ธฐ/์ฐ๊ธฐ๋ฅผ ์ง์ํ์ง ์์ต๋๋ค. ์ฌ๊ธฐ์ ๋ํ ๊ธฐ๋ฅ ์์ฒญ์ด ์์ต๋๋ค.
https://github.com/Apicurio/apicurio-studio/issues/165
ํ๋ ๊ฒ์ ์ด๋ ต์ง ์์ง๋ง ๋๊ธฐ์ด์ ์๋ ๊ฒ๋ณด๋ค ์์ ๋ช ๊ฐ์ง ๋ค๋ฅธ ๊ฐ์ ์ฌํญ์ด ์์ต๋๋ค. :)
ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก YAML์์ JSON์ผ๋ก ๋ณํํ๊ณ ๊ฒฐ๊ณผ๋ฅผ GitHub์ ์ ์ฅํ ๋ค์ ์ด์ด๋ณผ ์ ์์ต๋๋ค. ์ง์ฆ๋๋ ๊ฑด ์์ง๋ง, ์ฐ๋ฆฌ๊ฐ apicurio์ ์ถ๊ฐ ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์ ์์ ๋๊น์ง๋ ์๋ํ ๊ฒ์ ๋๋ค.
์ฐธ๊ณ : API ์ถ๊ฐ/๊ฐ์ ธ์ค๊ธฐ ์ ๋ ๋์ ์ค๋ฅ ๋ฉ์์ง๊ฐ ํ์ํ๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ์ฌ์ ํ โโ์ ํจํ ๋ฒ๊ทธ ๋ณด๊ณ ์์ ๋๋ค. ์์์ ์ฐพ์ ์์๋ ๊ฒฝ์ฐ (URL์์ ๊ฐ์ ธ์ฌ ๋ ์) ์ฐ๋ฆฌ๋ ( "ํ์ด์ง๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค"์ค๋ฅ๋ฅผ๋ณด๊ณ ํ์ง ์์) ๊ฒ์๋ณด๊ณ ํด์ผํฉ๋๋ค. ๋ฆฌ์์ค๊ฐ ์์ง๋ง ํ์์ด ์๋ชป๋ ๊ฒฝ์ฐ ๋ค๋ฅด๊ฒ ๋ณด๊ณ ํด์ผ ํฉ๋๋ค.
OpenAPI 3 JSON ๋๋ ์์ ๋งํฌ๋ ์์ ๊ฐ ์ค๋ ์๋ํ์ง ์์ต๋๋ค. URL์์ ๊ฐ์ ธ์ค๊ธฐ๊ฐ ์๋ํ์ง ์๋ ๊ฒฝ์ฐ:
๋๋
์๋
ํ์ธ์ @david4096 - ํด๋น URL์ ์ค์ ๋ก ์ฝํ
์ธ ๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ฒซ ๋ฒ์งธ URL์ด ์คํจํ์ต๋๋ค. ์ ์ด๋ ํด๋น ๋งํฌ๋ฅผ ํด๋ฆญํ๋ฉด ํ์ผ์ด ์์ต๋๋ค. ์ค์ ๋ก ํด๋น ๋ชจ๋์ src/test
๋ด์ resources
ํด๋๊ฐ ์์ต๋๋ค.
https://github.com/Apicurio/apicurio-studio/tree/master/back-end/hub-api/src/test
๊ทธ๋ฌ๋, ๋ ๋ฒ์งธ URL์์ ๋ถ๋ช ํ ๋ด์ฉ์ด์๋ค. Apicurio์์ ์๋ํ์ง ์๋ ์ด์ ๋ ๋ถํํ๋ ์์ง ๋ถ๊ธฐ(๋ง์คํฐ๋ง)์์ ์ฝํ ์ธ ๊ฐ์ ธ์ค๊ธฐ๋ฅผ ์ง์ํ์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด๊ฒ์ ๋ธ๋์น๋ฅผ ์ง์ํ๋ ๊ฒ์ด ์ด๋ ต์ง ์๊ธฐ ๋๋ฌธ์ ๋ถ๋ช ํ ๋๋ฝ๋ ๊ธฐ๋ฅ์ ๋๋ค.
์ฆ, ์ฐ๋ฆฌ๋ ๊ฐ๊ฐ์ API๋ฅผ ํตํด ๋ค์ํ ์์ค ์ ์ด ์์คํ ๋์ ์์์ URL์์ API ๋์์ธ์ ์ถ๊ฐ/๊ฐ์ ธ์ค๊ธฐํ ์ ์๋ ๋ฐฉํฅ์ผ๋ก ๊ฐ๊ณ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ์ํด ์ด๋ฌํ ์์คํ ์ ๋ ๋ง์ด ์์กดํ ๋๋ถํฐ). "URL์์ ๊ฐ์ ธ์ค๊ธฐ" ๊ธฐ๋ฅ์ ์ฐ์ ์์๋ฅผ ๋์ฌ ๋ค์ ๋ฒ์ ์ ํฌํจ์ํค๊ฒ ์ต๋๋ค.
ํ์ฌ๋ก์๋ ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก ํ ์ ์๋ ๊ฒ์ ์ถ๊ฐ/๊ฐ์ ธ์ค๊ธฐํ๋ ค๋ API๋ฅผ github ์ ์ฅ์์ ๋ง์คํฐ ๋ธ๋์น์ ์ ์ฅํ๊ณ (์๋ง๋ ์ด ๋ชฉ์ ์ ์ํ ์ ์ฅ์๋ฅผ ์์ฑํ ์ ์์) ๊ฑฐ๊ธฐ์์ ๊ฐ์ ธ์ค๋ ๊ฒ์ ๋๋ค.
์์ค ์ ์ด์์ ๋ถ๊ธฐ๋ฅผ ์ง์ํ๋ ํฐ์ผ์ ์ถ๊ฐํ์ต๋๋ค.
https://github.com/Apicurio/apicurio-studio/issues/222
๊ทธ๋ฌ๋ ์์์ URL์์ ์ฝํ ์ธ ๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฒ์ด ๋ ์ ์ฉํ ๊ธฐ๋ฅ์ด๋ผ๊ณ ์๊ฐํ๋ฏ๋ก ๋จผ์ ํด๊ฒฐํ๊ฒ ์ต๋๋ค.
์๋ ํ์ธ์ @EricWittmann ์ค๋ช ๊ฐ์ฌํฉ๋๋ค!