WebApi 集成 Swagger
1. Swagger(俗称:丝袜哥)是什么东西?
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。
2.丝袜哥可以干什么?
a.接口,服务可视化,非常清晰,好用
b.做接口测试,方便测试人员使用
3.Swagger怎么和WebApi集成?
第一步:创建WebApi工程

第二步:引入swagger的包(Swashbuckle、swagger两个)


第三步:打开解决方案属性-->生成,勾选XML文档文件,保存

swagger在生成xml注释文档之后会保存到当前appdomaim下的bin目录,用于在UI上展示
第四步:找到swaggerconfig文件的注册方法,去掉下面注释的这一句代码,用于在UI上加载生成的xml文档

GetXmlCommentsPath方法的实现如下:读取注释文件的路径
private static string GetXmlCommentsPath()
{
return string.Format("{0}/bin/WebApiSwaggerDemo.XML", System.AppDomain.CurrentDomain.BaseDirectory);
}
第五步:打开swggernet文件,注释掉下面的两行代码(估计是nuget包中的代码没有更新导致这个异常出现)

第六步:swagger已经集成成功了,在浏览器输入:http://localhost:37033/swagger/ui/index 就可以看到界面了

第七步:开发自己的API模块
/// <summary>
/// 更新订单信息
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost, Route("order/UpdateOrder")]
public OutPutResult UpdateOrder(BusinessModel input)
{
return new OutPutResult() { Success = false, Message = "恭喜你更新订单成功!" };
}
指定路由地址 order/UpdateOrder 和访问方式 Post/Get/Put
第八步:测试调用


通过Swaggerui可以通过你的Comtroller来分模块浏览和测试接口列表

这对于公司内部使用太方便了,所有的API 可以供开发和测试来调用,但是需要注意的一点是,生产环境还是要做权限控制的,因为POST和PUT方法是可以直接操作数据库的。
公司一直在用,但是没时间总结和分享,最近写下来希望对大家有帮助。
WebApi 集成 Swagger的更多相关文章
- ASP.NET WebAPI 集成 Swagger 启用 OAuth 2.0 配置问题
在 ASP.NET WebAPI 集成 Swagger 后,由于接口使用了 IdentityServer 做的认证,调试起来很不方便:看了下 Swashbuckle 的文档 ,是支持 OAuth2.0 ...
- 如何使用webapi集成swagger
现在B/S开发中,前后端分离无疑已经成为一种新的时尚,但是如何把后端开发的接口更好的提供给前段开发呢?还用接口文档?low了吧.不仅要花时间开发接口,还得花时间写文档,白花花的时间不久浪费了吗.如果接 ...
- webapi 集成swagger
参考资料:Stack Overflow 我自己写的demo:SwaggerDemoApi 在已有的webapi项目或者创建webapi项目中,打开nuget管理器 搜索:swagger 安装截图中的插 ...
- Katana的WebAPI集成Swagger 解决方案
这位大哥写的博客很清楚了,我就不重复了. http://www.cnblogs.com/caodaiming/p/4156476.html 错误解决 http://blog.csdn.net/gold ...
- WebApi集成Swagger
1.新建一个WebApi空项目 2.新建一个Person实体类: public class Person { public int ID { get; set; } public string Use ...
- netcore3.0 webapi集成Swagger 5.0
在项目中引用Swashbuckle.AspNetCore和Swashbuckle.AspNetCore.Filters两个dll,在Startup中的ConfigureServices相关配置代码如下 ...
- netcore3.0 webapi集成Swagger 5.0,Swagger使用
Swagger使用 1.描述 Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务. 作用: 1.接口的文档在线自动生成. 2.功能测试 本文转自 ...
- Web Api集成Swagger
WebApi集成Swagger 1.新建一个WebApi空项目 2.新建一个Person实体类: public class Person { public int ID { get; set; } p ...
- 在WebApi中 集成 Swagger
1. Swagger(俗称:丝袜哥)是什么东西? Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同 ...
随机推荐
- Android文本输入框(EditText)切换密码的显示与隐藏
package cc.c; import android.app.Activity; import android.os.Bundle; import android.text.Selection; ...
- 深入分析Java Web技术(2) IO
IO是当今Web面临的主要问题之一,可以说,大部分web应用的瓶颈都是IO的瓶颈. Java的IO类是java.io.它包含有80多个类,分为4大部分: 基于字节操作: InputStream,Out ...
- 【Vegas原创】安装rhel6.2,不能进图形化界面的终极解决方法
安装的时候,千万不要一路下一步,you should know,linux不是windows那么的傻瓜. 方法一: 在倒数最后一步,选择Desktop,而千万不要下一步,默认选择Basic Ser ...
- Openresty 安装教程
Openresty的简单安装方法,如需高级编译安装,请参照安装选项 1.安装配置好Yum源,不赘述此步骤 2.安装必要组件 yum install pcre-devel openssl-devel g ...
- 内部通信服务Factory(WCF)
WCF,很好,却又麻烦,很多时候不想用WCF的原因就是:用这个真麻烦... 麻烦的地方,比如: 一堆一堆的服务配置,散落在一个一个的folder下,更新系统时容易出错 客户端除了要知道WCF Cont ...
- 仿网易漂亮的TAB选项卡(标签)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- php中并发读写文件冲突的解决方案(文件锁应用示例)
PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适 ...
- phalcon开发工具(phalcon-devtools)
一.简介 Phalcon提供的这个开发工具主要是用来辅助开发,比如生成一些程序的基本框架,生成控制器模型等.使用这个工具我们只需要一个简单的命令即可生成应用的基本框架. 二.下载 github: ht ...
- 使用过滤器解决SQL注入和跨站点脚本编制
1 SQL注入.盲注 1.1 SQL注入.盲注概述 Web 应用程序通常在后端使用数据库,以与企业数据仓库交互.查询数据库事实上的标准语言是 SQL(各大数据库供应商都有自己的不同版本).Web 应用 ...
- SPF 简介
SPF 简介 摘要: SPF 是发送方策略框架 (Sender Policy Framework) 的缩写,希望能成为一个防伪标准,来防止伪造邮件地址.这篇文章对 SPF 进行了简单介绍,并介绍了它的 ...