47. Swagger para cliente y servidor REST API¶
47.1 Introducción¶
OpenAPI 3 Ejemplo de editor swagger (Utilizar el video para ver los pasos )
Ejemplo de generación y uso
Usamos el cliente
https://help.vertafore.com/devportal/content/howto/usingjavaclient.htm
47.1.1 Swagger codegen¶
Una forma de empezar a utilizar codegen es bajar el .jar:
wget https://oss.sonatype.org/content/repositories/releases/io/swagger/swagger-codegen-cli/2.2.1/swagger-codegen-cli-2.2.1.jar
47.1.1.1 Uso de codegen¶
Para obtener ayuda y lenguajes soportados:
java -jar swagger-codegen-cli.jar -h
java -jar swagger-codegen-cli.jar langs
Generar codigo
java -jar swagger-codegen-cli-2.2.1.jar generate -i <path of your Swagger specification> -l <language> -o dir ` Example:
java -jar swagger-codegen-cli-2.2.1.jar generate -i http://petstore.swagger.io/v2/swagger.json -l python -o sample/petstore/python
Opciones:
-i url para el api.
-l lenguaje de salida
-o directorio de salida.
Resumen del comando:
swagger-codegen-cli generate
[(-a <authorization> | --auth <authorization>)]
[--additional-properties <additional properties>...]
[--api-package <api package>] [--artifact-id <artifact id>]
[--artifact-version <artifact version>]
[(-c <configuration file> | --config <configuration file>)]
[-D <system properties>...] [--git-repo-id <git repo id>]
[--git-user-id <git user id>] [--group-id <group id>]
[--http-user-agent <http user agent>]
(-i <spec file> | --input-spec <spec file>)
[--ignore-file-override <ignore file override location>]
[--import-mappings <import mappings>...]
[--instantiation-types <instantiation types>...]
[--invoker-package <invoker package>]
(-l <language> | --lang <language>)
[--language-specific-primitives <language specific primitives>...]
[--library <library>] [--model-name-prefix <model name prefix>]
[--model-name-suffix <model name suffix>]
[--model-package <model package>]
[(-o <output directory> | --output <output directory>)]
[--release-note <release note>] [--remove-operation-id-prefix]
[--reserved-words-mappings <reserved word mappings>...]
[(-s | --skip-overwrite)]
[(-t <template directory> | --template-dir <template directory>)]
[--type-mappings <type mappings>...] [(-v | --verbose)]
-a <authorization>, --auth <authorization>
adds authorization headers when fetching the swagger definitions
remotely. Pass in a URL-encoded string of name:header with a comma
separating multiple values
...... (results omitted)
-v, --verbose