Sha*_*kar 6 c# azure swagger azure-web-sites azure-api-apps
我正在Visual Studio 2015上创建一个Azure API应用程序.当我点击浏览并重定向到http://localhost:3012/如果我添加swagger到网址没有任何反应:http://localhost:3012/swagger
似乎我需要添加/docs/v1一个完整的地址:http://localhost:3012/swagger/docs/v1.当我添加/ swagger加载swagger页面时,不应该像自动URL路由一样.此外,我只能查看json架构,如果我浏览到UI http://localhost:3012/swagger/ui页面没有加载.
API应用程序构建成功.有什么遗失?
在WebAPI项目的配置中(SwaggerConfig.cs在文件夹中App_Start),您必须启用Swagger UI.它被注释为默认行为.
只需打开配置,搜索:
/*
})
.EnableSwaggerUi(c =>
{
*/
Run Code Online (Sandbox Code Playgroud)
并禁用上面和下面的行中的注释
上面的 Pedro 为启用 SwaggerUi 提供了完美的答案。至于你关于网址“ swagger/docs/v1”的问题
这是 Swashbuckle 用于返回 API 的 Swagger 2.0 JSON 元数据的默认 URL
该SwaggerConfig.cs文件是在项目中安装 Swashbuckle 包时创建的。您可以在文件夹“App_Start”中找到它。它提供了多种配置 Swashbuckle 的方法。我还没有检查您是否可以更改默认 URL 或对其进行 URL 重新路由。
编辑:
Swagger 文档和 swagger-ui 的默认路由模板分别为“swagger/docs/{apiVersion}”和“swagger/ui/{*assetPath}”。只要提供的模板包含相关的路由参数 - {apiVersion} 和 {*assetPath},您就可以更改这些内容。例如:swagger-ui 的 URL 将为 myswag/index.html。
httpConfiguration .EnableSwagger("docs/{apiVersion}/swagger", c => c.SingleApiVersion("v1", "API 的标题"))
.EnableSwaggerUi("myswag/{*assetPath}");
您可以在 GitHub 存储库中阅读更多相关信息:https://github.com/domaindrivendev/Swashbuckle