asp.net – 如何在swagger中为.Net Core Web API设置基本路径属
发布时间:2020-12-16 07:20:44 所属栏目:asp.Net 来源:网络整理
导读:我在ASP.Net Core(版本1.1.2)中构建了一个Web API,并使用Swashbuckle.AspNetCore生成swagger定义. 下面是自动生成的swagger定义的一部分.我想改变路径,所以它不包括/ api / ApiName,但它将包含在basePath中,现在是/ { "swagger": "2.0","info": { "version":
我在ASP.Net Core(版本1.1.2)中构建了一个Web API,并使用Swashbuckle.AspNetCore生成swagger定义.
下面是自动生成的swagger定义的一部分.我想改变路径,所以它不包括/ api / ApiName,但它将包含在basePath中,现在是/ { "swagger": "2.0","info": { "version": "v1","title": "ApiName.V1" },"host": "ApiUrl","basePath": "/api/ApiName","paths": { "/": { "get": { "tags": [ "ApiName" ],......... 所以我想得到的是: { "swagger": "2.0","basePath": "/","paths": { "/api/ApiName": { "get": { "tags": [ "ApiName" ],......... 我们有一些其他的API没有用.Net Core编写,并且它通过添加默认路由修复了同样的问题.我试图通过删除API控制器顶部的路由在.Net核心上做同样的事情 [Route("api/[Controller]")] 并将其添加到Startup.cs.但是这没用.有没有人知道如何解决这个问题? 解决方法
最后我用它来修复它:
您可以设置PreSerializeFilters以添加BasePath并编辑路径.以为会有更优雅的方式,但这有效. var basepath = "/api/AppStatus"; c.PreSerializeFilters.Add((swaggerDoc,httpReq) => swaggerDoc.BasePath = basepath); c.PreSerializeFilters.Add((swaggerDoc,httpReq) => { IDictionary<string,PathItem> paths = new Dictionary<string,PathItem>(); foreach (var path in swaggerDoc.Paths) { paths.Add(path.Key.Replace(basepath,"/"),path.Value); } swaggerDoc.Paths = paths; }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何在Microsoft.AspNet.Mvc.Facebook.Face
- 可以在ASP.NET用户控件中使用void async方法吗?
- asp.net-mvc – 为什么visual studio 2012会在mvc项目中自动
- asp.net-mvc – MVC4捆绑通配符 – *与{version}
- ASP.NET MVC 4 – 应用程序不接受新连接字符串 – AppHarbo
- ASP.NET -- WebForm -- Session的使用
- iis-7.5 – ASP.NET 5将应用程序添加为IIS应用程序
- asp.net-core – 找不到Swashbuckle.AspNetCore SwaggerOpe
- asp.net-mvc – 在Windows Creators Update之后,ASP.NET缓存
- asp.net – 如何删除linq到sql?
推荐文章
站长推荐
- asp.net-mvc – 根据需要处理ASP.NET MVC可选字段
- asp.net-mvc – ‘/’应用程序中的ASP.NET MVC3
- Asp.net MVC中使用JQuery插件ajaxFileUpload上传
- asp.net – 有人可以帮我理解这个堆栈跟踪吗?
- asp.net – 当使用AngularJS,WebAPI 2和Oauth 2时
- asp.net – 请求Facebook访问令牌时400错误请求
- Asp.net mvc3剃刀具有多个提交按钮
- asp.net-mvc – 如何在ChildAction上删除OutputC
- asp.net 导出excel 中文乱码解决方法
- asp.net-mvc-4 – Dapper多对多查询
热点阅读