参考文档来源:https://www.cnblogs.com/yilezhu/p/9241261.html

官方地址 https://swagger.io/

代码即接口文档,接口文档即代码

使用.net core 作为demo展示 swagger的使用

新建一个 asp.net core web 应用程序

nuget  Swashbuckle  引入相关dll

在 Startup.cs 文件里引入相关dll

using Swashbuckle.AspNetCore.Swagger;
 public void ConfigureServices(IServiceCollection services)
{
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
///注册Swagger生成器,定义一个和多个Swagger 文档
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new Info
{
Title = "王先生的接口文档",
Version = "v1",
Description = "用来测试体验",
Contact = new Contact()
{
Email = "332824@qq.com",
Name = "王先生",
Url = "www.baidu.com"
},
License = new License()
{
Url = "www.baidu.com",
Name = "王先生"
},
}); // 为 Swagger JSON and UI设置xml文档注释路径
var basePath = Path.GetDirectoryName(typeof(Program).Assembly.Location);//获取应用程序所在目录(绝对,不受工作目录影响,建议采用此方法获取路径)
var xmlPath = Path.Combine(basePath, "SwaggerTest.xml");
c.IncludeXmlComments(xmlPath);
});
}

  

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
//启用中间件服务生成Swagger作为JSON终结点
app.UseSwagger();
//启用中间件服务对swagger-ui,指定Swagger JSON终结点 app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "王先生的接口文档V1");
c.RoutePrefix = string.Empty;
}); app.UseHttpsRedirection();
app.UseMvc(); }

接口部分代码:

 [Route("api/[controller]")]
[ApiController]
public class ValuesController : ControllerBase
{
// GET api/values
/// <summary>
/// 获取商户名称
/// </summary>
/// <returns></returns>
[HttpGet]
public ActionResult<IEnumerable<string>> Get()
{
return new string[] { "value1", "value2" };
} // GET api/values/5
/// <summary>
///根据商户ID获取商户新鲜
/// </summary>
/// <param name="id">商户ID</param>
/// <returns></returns>
[HttpGet("{id}")]
public ActionResult<string> Get(int id)
{
return "value";
}

  

注意点:

效果图:

.Net Core使用Swagger来对接口文档化的更多相关文章

  1. asp.net core 使用 swagger 生成接口文档

    参考地址:http://www.cnblogs.com/daxnet/p/6181366.html http://www.jianshu.com/p/fa5a9b76f3ed 微软参考文档:https ...

  2. .net core 使用 swagger 生成接口文档

    微软参考文档:https://docs.microsoft.com/en-us/aspnet/core/tutorials/web-api-help-pages-using-swagger?tabs= ...

  3. .NET Core和Swagger 生成 Api 文档

    测试/生产环境的BUG 这里更新一下在本地调试正常,在INT/PROD上抛错,错误信息为: */**/*.xml(Swagger json file) 文件找不到,在startup 里builder ...

  4. .NET Core和Swagger 生成 Api 文档转

    阅读目录 1.引用 2.打开startup.cs文件 3.设置XML注释 4.运行结果 5.主要问题的解决办法 6.可以自定义UI 前言 最近写了好多Web api, 老大说太乱了,要整理一下,使用S ...

  5. .net core 使用swagger生成API文档

    [1]安装Swashbuckle.AspNetCore包 [2]在Startup.cs中注册swagger //注册Swagger生成器,定义一个和多个Swagger 文档 services.AddS ...

  6. .Net Core 使用 Swagger 提供API文档

    1.运行环境 开发工具:Visual Studio 2017 JDK版本:.NET Core 2.0 项目管理工具:nuget 2.GITHUB地址 https://github.com/nbfujx ...

  7. 给.Net Core添加Swagger实现接口文档自动生成

    1.添加Nuget相关引用 Swashbuckle.AspNetCore

  8. 在ASP.NET Core Web API上使用Swagger提供API文档

    我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页 ...

  9. Core Web API上使用Swagger提供API文档

    在ASP.NET Core Web API上使用Swagger提供API文档   我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的AP ...

随机推荐

  1. 查找 oracle 数据库中包含某一字段的所有表的表名

    select table_name from DBA_TAB_COLUMNS where COLUMN_NAME='字段名'; 字段名需要大写

  2. Kafka学习(一)

    官网 kafka.apache.org 集群部署 消息中间键 --> 分布式流式平台 Kafka Streaming Flume: 1个进程包含三个角色 source channle sink ...

  3. Python—导入自定义的模块和包(指定路径下的模块和包)

    模块路径如下图: import sys sys.path.append(r"E:\project\path") print "===>", sys.arg ...

  4. Scrapy 下载图片时 ModuleNotFoundError: No module named'PIL'

    使用scrapy的下载模块需要PIL(python图像处理模块)的支持,使用pip安装即可

  5. QT使用LIBS添加绝对路径的dll引用

    http://blog.sina.com.cn/s/blog_70b93da90100n6w8.html 参考这篇文章 举例: 要引用 F:\QT\parttime_work\build-JChart ...

  6. iOS: 本地通知的前后变化(iOS10)

    一.介绍  通知和推送是应用程序中很重要的组成部分.本地通知可以为应用程序注册一些定时任务,例如闹钟.定时提醒等.远程推送则更强大,提供了一种通过服务端主动推送消息到客户端的方式,服务端可以更加灵活地 ...

  7. IT兄弟连 Java语法教程 数据类型3

    字符型 在Java中,用于存储字符串的数据类型是char.然而,C/C++程序员要当心:Java中的char与C或C++中的char是不同的.在C/C++中,char的宽度是8位.而在Java中不是这 ...

  8. DedeCMS V5.7 SP2后台代码执行漏洞复现(CNVD-2018-01221)

    dedeCMS  V5.7 SP2后台代码执行漏洞复现(CNVD-2018-01221) 一.漏洞描述 织梦内容管理系统(Dedecms)是一款PHP开源网站管理系统.Dedecms V5.7 SP2 ...

  9. 在.net 程序中使用Mustache模板字符串

    今天弄了一个配置随着使用环境动态切换的功能,一个基本的思路是: 将配置配置为模板的形式, 根据不同的环境定义环境变量 根据环境变量渲染模板,生成具体的配置 这里面就涉及到了一个字符串模板的功能,关于模 ...

  10. 2018-8-10-win10-uwp-关联文件

    原文:2018-8-10-win10-uwp-关联文件 title author date CreateTime categories win10 uwp 关联文件 lindexi 2018-08-1 ...