usar tutorial restful que probar example como comentarios json asp.net-web-api swagger api-doc

json - tutorial - swagger restful



Generar documentación webAPI en formato jagger swagger. (3)

Como se indica, / swagger te lleva a la interfaz de usuario de Swagger.

Si estás usando Swashbuckle, entonces /swagger/docs/v1 debería llevarte al archivo swagger.json. Encontré esto usando las herramientas de desarrollo de Chrome.

Edición: si estás usando Swashbuckle.AspNetCore, entonces la url es ligeramente diferente - /swagger/v1/swagger.json

He creado una WebAPI usando .Net 4.5 y quiero documentar esta API usando Swagger . He añadido swagger-ui en mi proyecto .Net. Ahora, cuando navego a ../swagger-ui/index.html se abre con éxito la tienda de mascotas api-docs (json) en formato de interfaz de usuario swagger.

Mi pregunta es ¿cómo puedo crear tal json (swagger) para mis controladores y modelos WebAPI? Como he puesto en los resúmenes / comentarios XML requeridos para las clases y atributos de c #.

Vi que Swagger.Net y Swashbuckle están haciendo cosas similares pero realmente no pude entender cómo generar el archivo swagger-json usando ninguno de ellos. Puede haber un error muy pequeño que estoy haciendo pero no puedo señalar.

Por favor ayuda.


Debe integrar Swagger.NET en su proyecto para terminar con el siguiente controlador:

public class SwaggerController : ApiController { /* snip */ }

y también debe tener la siguiente ruta registrada:

context.Routes.MapHttpRoute ( name : "Swagger", routeTemplate: "api/swagger" defaults: new { controller = "Swagger", action = "Get", });

asumiendo que está funcionando, debería poder llamar / api / swagger y obtener algo como lo siguiente:

{ apiVersion: "4.0.0.0", swaggerVersion: "2.0", basePath: "http://localhost:5555", resourcePath: null, apis: [ { path: "/api/docs/Values", description: "No Documentation Found.", operations: [ ] }, { path: "/api/docs/Home", description: "No Documentation Found.", operations: [ ] } ]

}

luego, en SwaggerUI / index.html, querrá actualizar la discoveryUrl:

<script type="text/javascript"> $(function () { window.swaggerUi = new SwaggerUi({ discoveryUrl: "http://localhost:5555/api/swagger", apiKey:"", dom_id:"swagger-ui-container", supportHeaderParams: false, supportedSubmitMethods: [''get'', ''post'', ''put''] }); window.swaggerUi.load(); }); </script>


Puede usar la aplicación de escritorio "NSwagStudio" para cargar el documento json sin ejecutar el proyecto api. Al proporcionar el ensamblaje de la API.

https://github.com/RSuter/NSwag/wiki/NSwagStudio

Descargue la aplicación de escritorio de Windows (NSwagStudio).