定制swagger的UI
https://github.com/RSuter/NSwag/wiki#ways-to-use-the-toolchain
Customizations
Swagger generation:
You can customize the Swagger generator with the following extension points of NSwag:
https://github.com/RSuter/NSwag/wiki/OWIN-Middleware
- Package: NSwag.AspNet.Owin (.NET 4.5+)
The NuGet package provides extension methods to register the NSwag ASP.NET OWIN middlewares:
The middlewares are based on WebApiToSwaggerGenerator - the old reflection based ASP.NET Core and ASP.NET generator
Swagger only:
app.UseSwagger(assembly, configure): Registers the Swagger generator on a given route
Swagger and Swagger UI: (用了这个,就不能用上面的,是冲突的)
app.UseSwaggerUi(assembly, configure): Registers the Swagger generator and Swagger UI v2.x on the given routesapp.UseSwaggerUi(configure): Registers only the Swagger UI on the given routeapp.UseSwaggerUi3(configure): Registers the Swagger generator and Swagger UI v3.x on the given routesapp.UseSwaggerReDoc(configure): Registers the Swagger generator and ReDoc on the given routes
The default routes to access the Swagger specification or Swagger UI:
- Swagger JSON:
http://yourserver/swagger/v1/swagger.json - Swagger UI:
http://yourserver/swagger
1. Install required NuGet packages
First, you need to install the required NSwag NuGet packages.
2. Register the middleware
public class Startup
{
public void Configuration(IAppBuilder app)
{
var config = new HttpConfiguration(); app.UseSwaggerUi(typeof(Startup).Assembly, settings =>
{
// configure settings here
// settings.GeneratorSettings.*: Generator settings and extension points
// settings.*: Routing and UI settings
});
app.UseWebApi(config); config.MapHttpAttributeRoutes();
config.EnsureInitialized();
}
}
Configure the routing of the Swagger requests
There are two ways to do this:
自定义
Post process the served Swagger specification
It is possible to transform the generated Swagger specification before it is served to the client:
app.UseSwagger(typeof(Startup).Assembly, settings =>
{
settings.PostProcess = document =>
{
document.Info.Description = "My description";
};
});
If you want to implement more reusable code, you can also implement Document Processors and Operation Processors.
UseSwagger和UseSwaggerUi3只能用一个
app.UseSwaggerUi3(typeof(Startup).Assembly, settings =>
{
// configure settings here
// settings.GeneratorSettings.*: Generator settings and extension points
// settings.*: Routing and UI settings
settings.GeneratorSettings.DefaultUrlTemplate = "api/{controller}/{action}/{id}";
settings.PostProcess = document =>
{
document.Info.Title = "My Services";
document.Info.Version = "1.5";
document.Info.Contact = new SwaggerContact {Name = "My team", Email = "test@qq.com" };
};
});
参考
https://github.com/RSuter/NSwag/blob/master/src/NSwag.Sample.NETCore22/Startup.cs 这里有ConfigureServices的方法签名示例
https://docs.particular.net/samples/dependency-injection/aspnetcore/ 需要引用Autofac.Extensions.DependencyInjection
https://github.com/RSuter/NSwag/wiki/Middlewares 两种不同的middleware
https://github.com/RSuter/NSwag/wiki/AspNetCore-Middleware 这个里面是用ConfigureServices来处理文档
https://github.com/RSuter/NSwag/wiki/OWIN-Middleware 这个里面是用pp.UseSwaggerUi3(configure)来处理文档
定制swagger的UI的更多相关文章
- Asp.net Core WebApi 使用Swagger做帮助文档,并且自定义Swagger的UI
WebApi写好之后,在线帮助文档以及能够在线调试的工具是专业化的表现,而Swagger毫无疑问是做Docs的最佳工具,自动生成每个Controller的接口说明,自动将参数解析成json,并且能够在 ...
- Swagger 自定义UI界面
Swagger 自定义UI界面 Swagger简单介绍 如何使用Swagger 添加自定义UI界面 使用swagger-ui-layer Swagger ui 的原生UI界面如下: 个人感觉原生UI显 ...
- 我定制的jquery ui主题
打开网址 http://jqueryui.com/themeroller/,找到Gallery找到Redmond点击edit 将圆角设置成3px,让圆角更低调:将下面的每个Background的背景图 ...
- 使用 Swagger UI 与 Swashbuckle 创建 RESTful Web API 帮助文件
作者:Sreekanth Mothukuru 2016年2月18日 本文旨在介绍如何使用常用的 Swagger 和 Swashbuckle 框架创建描述 Restful API 的交互界面,并为 AP ...
- 使用 Swagger UI 与 Swashbuckle 创建 RESTful Web API 帮助文件(转)
作者:Sreekanth Mothukuru2016年2月18日 本文旨在介绍如何使用常用的 Swagger 和 Swashbuckle 框架创建描述 Restful API 的交互界面,并为 API ...
- [C#]在 DotNetCore 下的 Swagger UI 自定义操作
1.Swagger UI 是什么? Swagger UI 是一个在线的 API 文档生成与测试工具,你可以将其集成在你的 API 项目当中. 支持 API 自动同步生成文档 高度自定义,可以自己扩展功 ...
- 在 .NET Core 下的 Swagger UI 自定义操作
1.Swagger UI 是什么? Swagger UI 是一个在线的 API 文档生成与测试工具,你可以将其集成在你的 API 项目当中. 支持 API 自动同步生成文档 高度自定义,可以自己扩展功 ...
- ASP.NET Web API 使用Swagger生成在线帮助测试文档
Swagger-UI简单而一目了然.它能够纯碎的基于html+javascript实现,只要稍微整合一下便能成为方便的API在线测试工具.项目的设计架构中一直提倡使用TDD(测试驱动)原则来开发,sw ...
- 使用 Swagger 文档化和定义 RESTful API
大部分 Web 应用程序都支持 RESTful API,但不同于 SOAP API——REST API 依赖于 HTTP 方法,缺少与 Web 服务描述语言(Web Services Descript ...
随机推荐
- ddos cc攻击简单介绍(转)
何为syn flood攻击: SYN Flood是一种广为人知的DoS(拒绝服务攻击)是DDoS(分布式拒绝服务攻击)的方式之一,这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,从而使得被攻 ...
- JZOJ.5236【NOIP2017模拟8.7】利普希茨
Description
- 【BZOJ2039】[2009国家集训队]employ人员雇佣 最小割
[BZOJ2039][2009国家集训队]employ人员雇佣 Description 作为一个富有经营头脑的富翁,小L决定从本国最优秀的经理中雇佣一些来经营自己的公司.这些经理相互之间合作有一个贡献 ...
- cocos2d游戏开发,常用工具集合
位图字体工具Bitmap Font ToolsBMFont (Windows)FonteditorGlyph DesignerHieroLabelAtlasCreator 粒子编辑工具Particle ...
- 160812、apache milagro分布式安全认证系统
java32位.64位及js的代码:http://pan.baidu.com/s/1cqnwuE 一.云链接为中心的软件及需要互联网规模物联网设备 二.利用双线性密码学分发加密操作和分裂的加密参数 三 ...
- 160804、oracle查询:取出每组中的第一条记录
oracle查询:取出每组中的第一条记录按type字段分组,code排序,取出每组中的第一条记录 方法一: select type,min(code) from group_info group by ...
- SpringBoot专题2----springboot与schedule的激情相拥
Schedule:计划,任务.就是我们常说的定时任务.这在我们做一些系统的时候,是经常需要用到的.比如:定时更新一些数据,定时更新索引,都需要这样的一个功能. 第一:创建一个名为springboot- ...
- js 中和c类似
w <script type="text/javascript"> <!-- var w = 123 alert(w) function fun(){ alert ...
- amazonservices api 抽象类 Class Abstraction
http://php.net/manual/zh/language.oop5.abstract.php MWSOrdersPHPClientLibrary-2013-09-01._V533357711 ...
- awesome-modern-cpp
Awesome Modern C++ A collection of resources on modern C++. The goal is to collect a list of resouce ...