【转】【Swagger】 webapi集成

1. Swagger(俗称:丝袜哥)是什么东西?

    Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。

2.swagger可以干什么?

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。 就可以看到界面了

 

第七步:开发自己的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来分模块浏览和测试接口列表

 

猜你喜欢

转载自www.cnblogs.com/Seven77yixuan/p/10848973.html
今日推荐