Solución:
La nueva versión swagger le proporciona una propiedad llamada RoutePrefix.
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
c.RoutePrefix = "docs";
});
Debería funcionar para .net core
Para ASP.NET Core 2 (y usando Swashbuckle.AspNetCore.Swagger -Version 4.0.1
), se pueden hacer un par de cosas para una configuración completa de cambiar la URL base de la interfaz de usuario de swagger predeterminada.
Si desea agregar “mycoolapi” al comienzo de la URL de la interfaz de usuario de swagger predeterminada, así: http://<server>/mycoolapi/swagger
, luego haga lo siguiente:
En su método de configuración Startup.cs:
app.UseSwagger(c =>
{
c.RouteTemplate = "mycoolapi/swagger/{documentname}/swagger.json";
});
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/mycoolapi/swagger/v1/swagger.json", "My Cool API V1");
c.RoutePrefix = "mycoolapi/swagger";
});
Luego, si actualmente tiene su launchSettings para iniciar el navegador en la IU de swagger al inicio (para fines de desarrollo), actualice su sección de perfiles de archivo launchSettings.json de manera similar:
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "mycoolapi/swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"MyProject.Web": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "mycoolapi/swagger",
"applicationUrl": "https://localhost:5001;http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)