Servidor de OpenAPI y dos ejemplos
This commit is contained in:
parent
eb8f14ed16
commit
f37e9fa996
|
@ -1,3 +1,7 @@
|
||||||
# openapi-demo
|
# **Código para ejecutar un especificación en OpenAPI**
|
||||||
|
|
||||||
|
|
||||||
|
## Instalación
|
||||||
|
|
||||||
|
Utilice los componentes swa
|
||||||
Ejemplo de un servicio de OpenAPI con swagger
|
Ejemplo de un servicio de OpenAPI con swagger
|
|
@ -0,0 +1,77 @@
|
||||||
|
openapi: 3.0.0
|
||||||
|
info:
|
||||||
|
title: API de Ejemplo de Usuarios
|
||||||
|
description: API para administrar usuarios
|
||||||
|
version: 1.0.0
|
||||||
|
servers:
|
||||||
|
- url: https://miapp.midominio.com/tienda/
|
||||||
|
paths:
|
||||||
|
/usuarios:
|
||||||
|
post:
|
||||||
|
summary: Agregar un nuevo usuario
|
||||||
|
description: Crea un nuevo usuario en la aplicación.
|
||||||
|
requestBody:
|
||||||
|
required: true
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
nombre:
|
||||||
|
type: string
|
||||||
|
edad:
|
||||||
|
type: integer
|
||||||
|
responses:
|
||||||
|
'201':
|
||||||
|
description: Usuario creado con éxito
|
||||||
|
'400':
|
||||||
|
description: Error en la solicitud
|
||||||
|
|
||||||
|
/usuarios/{id}:
|
||||||
|
delete:
|
||||||
|
summary: Borrar un usuario existente
|
||||||
|
description: Elimina un usuario de la aplicación por su ID.
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
required: true
|
||||||
|
description: ID del usuario a borrar
|
||||||
|
schema:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
responses:
|
||||||
|
'204':
|
||||||
|
description: Usuario eliminado con éxito
|
||||||
|
'404':
|
||||||
|
description: Usuario no encontrado
|
||||||
|
|
||||||
|
put:
|
||||||
|
summary: Actualizar un usuario existente
|
||||||
|
description: Actualiza la información de un usuario existente en la aplicación por su ID.
|
||||||
|
parameters:
|
||||||
|
- in: path
|
||||||
|
name: id
|
||||||
|
required: true
|
||||||
|
description: ID del usuario a actualizar
|
||||||
|
schema:
|
||||||
|
type: integer
|
||||||
|
format: int64
|
||||||
|
requestBody:
|
||||||
|
required: true
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
nombre:
|
||||||
|
type: string
|
||||||
|
edad:
|
||||||
|
type: integer
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Usuario actualizado con éxito
|
||||||
|
'400':
|
||||||
|
description: Error en la solicitud
|
||||||
|
'404':
|
||||||
|
description: Usuario no encontrado
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
openapi: 3.0.0
|
||||||
|
info:
|
||||||
|
version: 1.0.0
|
||||||
|
title: Sample API
|
||||||
|
description: A sample API to illustrate OpenAPI concepts
|
||||||
|
paths:
|
||||||
|
/list:
|
||||||
|
get:
|
||||||
|
description: Returns a list of stuff
|
||||||
|
responses:
|
||||||
|
'200':
|
||||||
|
description: Successful response
|
|
@ -0,0 +1,14 @@
|
||||||
|
const YAML = require('yamljs')
|
||||||
|
const express = require('express');
|
||||||
|
const swaggerUi = require('swagger-ui-express');
|
||||||
|
const openApiDocument = YAML.load('./empleados.yaml');
|
||||||
|
|
||||||
|
const app = express();
|
||||||
|
|
||||||
|
app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(openApiDocument));
|
||||||
|
|
||||||
|
const PORT = process.env.PORT || 8080;
|
||||||
|
app.listen(PORT, () => {
|
||||||
|
console.log(`Servidor corriendo en http://localhost:${PORT}`);
|
||||||
|
});
|
||||||
|
|
Loading…
Reference in New Issue