WebApi接口开发完毕后,交付给前端人员或手机端开发者时接口说明文档是必不可少的配套设备,如果公司流程不规范大家使用口口相传的交接方式,而且没有改进的欲望,那你可以到此为止了。Swagger是方便测试接口,快速展示注释内容,生成Restful风格接口文档的框架。
Swagger能成为最受欢迎的REST APIs文档生成工具之一,有以下几个原因:
Swagger 可以生成一个具有互动性的API控制台,开发者可以用来快速学习和尝试API。
Swagger 可以生成客户端SDK代码用于各种不同的平台上的实现。
Swagger 文件可以在许多不同的平台上从代码注释中自动生成。
Swagger 有一个强大的社区,里面有许多强悍的贡献者。
1、安装Swashbuckle
2、初次运行 输入 自己网站地址/swagger 我这里是http://www.permissionapi.com/swagger
3、添加自定义ApiController
public class AdminController : ApiController
{
/// <summary>
/// 获取管理员信息
/// </summary>
/// <param name="username">管理员姓名</param>
/// <param name="pwd">管理员密码</param>
/// <returns></returns>
public string Get(string username,string pwd)
{
return $"username:{username},pwd:{pwd}";
}
}
4、添加实现了ISwaggerProvider接口的类
在App_Start文件夹中添加SwaggerControllerDescProvider.cs,相关代码如下:
namespace WebApiSwagger.Main.App_Start
{
/// <summary>
/// 显示swagger控制器的描述
/// </summary>
public class SwaggerControllerDescProvider : ISwaggerProvider
{
private readonly ISwaggerProvider _swaggerProvider;
private static ConcurrentDictionary<string, SwaggerDocument> _cache = new ConcurrentDictionary<string, SwaggerDocument>();
private readonly string _xml;
/// <summary>
///
/// </summary>
/// <param name="swaggerProvider"></param>
/// <param name="xml">xml文档路径</param>
public SwaggerControllerDescProvider(ISwaggerProvider swaggerProvider