一、安装

新建一个没有身份验证的mvc项目 - SwaggerMvc5Demo,然后添加一个名为Remote(自定义)且包含基础读写(不想手写)的ApiController
 
使用以下方法来添加 Swashbuckle:
  • 从“程序包管理器控制台”窗口:Install-Package Swashbuckle -Version 5.6.0
  • 从“管理 NuGet 程序包”对话框中:
  • 右键单击“解决方案资源管理器” > “管理 NuGet 包”中的项目
  • 将“包源”设置为“nuget.org”
  • 在搜索框中输入“Swashbuckle”
  • 从“浏览”选项卡中选择“Swashbuckle”包,然后单击“安装”
 

二、配置

1.项目属性->勾选生成xml文档文件
2.添加导航链接
在_Layout.cshtml文件中添加代码
<li>@Html.ActionLink("Swagger Help", "", "Swagger", new { area = "" }, null)</li>
3.修改SwaggerConfig.cs文件
 安装完成后,在文件夹App_Start自动生成一个配置文件 swagger.config。这里可以做多版本控制,定义扩展功能,自定义显示ui的样式脚本,可以配置过滤、权限等。
例如:
(1)为接口添加xml注释
string path = string.Format("{0}/bin/SwaggerMvc5Demo.XML", System.AppDomain.CurrentDomain.BaseDirectory);
c.IncludeXmlComments(path);
使用前
使用后
(2)使用特性 [Obsolete]
在config中 开启 c.IgnoreObsoleteProperties();
 
 
 
 

三、调用

1.直接调用
只要输入参数id,即可调用,非常方便
2.AutoRest
AutoRest (https://github.com/Azure/AutoRest), 简单来说,就是一个EXE工具,可以根据Swagger的结构生成服务的客户端,这个客户端可以让你像调用本地方法一样调用服务,方法内部包装了Http请求。 
 
扩展:ABP集成swagger
 
 

四、错误记录

swagger出现问题:not supported by swagger 2.0

一个controller中只能有一个HttpGet请求,多了就会报错。建议减少重载方法,将其他Get方法分开

如果在swagger.config中加上c.ResolveConflictingActions(apiDescriptions => apiDescriptions.FirstOrDefault());则会只显示第一个get方法

原文:https://blog.csdn.net/jin80506/article/details/77737470

最新文章

  1. mysql索引总结----mysql 索引类型以及创建
  2. &lt;&lt;&lt; Js中实现对字符串的截取
  3. node-webkit 桌面开发 初入1
  4. web前端面试题总结
  5. WPF-非矩形窗口的创建
  6. linux 下vim的使用
  7. android中Handle类的用法
  8. React表单元素的使用
  9. Model First:创建实体数据模型(ADO.NET 实体数据模型)
  10. JS选中OPTION
  11. C#关于编码、解码相关问题
  12. Intellij IDEA 导入Eclipse或MyEclipse的Web项目(旧版 转载)
  13. HDU 1870 愚人节的礼物
  14. 关于Python2字符编码的体会
  15. 实例理解mapreduce任务的串行运行过程
  16. 解决Cell重用内容混乱的几种简单方法,有些方法会增加内存
  17. Finance API文档
  18. windows下更换pip源
  19. 以字符串形式获取excel单元格中的内容
  20. SpringMVC RedirectView的使用以及源码分析

热门文章

  1. Python读写Excel文件的实例
  2. 用Python制作只属于你和ta的聊天渠道吧
  3. Python-标准库(常用模块)
  4. 何为http?何为RPC?
  5. h5本地存储登录页面实现记住密码功能
  6. qt 使用OpenCV
  7. swift(四)swift的广义匹配
  8. Python3使用线程
  9. bayaim_今晚打老虎
  10. bootstrap多级下拉菜单