WEB2.0/프로그래밍

아직도 손으로 한땀한땀 response model을 만들고 계신가요?

나를찾는아이 2023. 4. 6. 11:46
728x90
반응형

openapi 스펙의 swagger를 많이들 사용하실거예요

 

클라이언트 개발자 분들은 swagger를 보고 api의 response의 타입에 맞춰

 

model을 만드는 작업을 할텐데 이 작업이 은근히 번거롭습니다

 

 

특히나 response 하는 변수가 수십개가 넘는다면

 

모델을 일일이 swagger 보고 작업하다가는 오타가날수도 있고

 

자칫 타입을 실수하는 일도 발생할수 있습니다

 

 

이럴때 openapi generator가 큰 도움이 됩니다

 

 

https://openapi-generator.tech/

 

Hello from OpenAPI Generator | OpenAPI Generator

Description will go into a meta tag in <head />

openapi-generator.tech

 

 

설치를 하시고 아래의 명령어를 통해서 openapi 스펙의 yaml 또는 json 파일을 입력하면 

 

openapi-generator generate -i petstore.yaml -g ruby -o /tmp/test/

 

자동으로 해당 openapi 스펙에 기재된 dto들을 언어에 맞게 자동으로 생성해준답니다

 

생성된 dto를 복붙하면 아주 깔끔하게 번거로운 일을 끝낼수 있습니다

 

 

-g 옵션으로 쓰는 제너레이터는 그 종류가 매우 많습니다

 

 

https://openapi-generator.tech/docs/generators

 

Generators List | OpenAPI Generator

The following generators are available:

openapi-generator.tech

 

 

 

ada
android
apex
bash
c
clojure
cpp-qt-client
cpp-restsdk
cpp-tiny (beta)
cpp-tizen
cpp-ue4 (beta)
crystal (beta)
csharp
csharp-netcore
dart
dart-dio
eiffel
elixir
elm
erlang-client
erlang-proper
go
groovy
haskell-http-client
java
java-helidon-client (beta)
java-micronaut-client (beta)
javascript
javascript-apollo-deprecated (deprecated)
javascript-closure-angular
javascript-flowtyped
jaxrs-cxf-client
jetbrains-http-client (experimental)
jmeter
julia-client (beta)
k6 (beta)
kotlin
lua (beta)
nim (beta)
objc
ocaml
perl
php
php-dt (beta)
powershell (beta)
python
python-legacy
python-nextgen (beta)
python-prior
r
ruby
rust
scala-akka
scala-gatling
scala-httpclient-deprecated (deprecated)
scala-sttp (beta)
scalaz
swift5
typescript (experimental)
typescript-angular
typescript-aurelia
typescript-axios
typescript-fetch
typescript-inversify
typescript-jquery
typescript-nestjs (experimental)
typescript-node
typescript-redux-query
typescript-rxjs

 

 

이렇게나 많은 종류를 지원하고 있습니다

 

 

728x90
반응형