• WebApi 集成 Swagger


    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方法是可以直接操作数据库的。

     

    公司一直在用,但是没时间总结和分享,最近写下来希望对大家有帮助。

     

    如果您觉得本文对你有用,不妨帮忙点个赞,或者在评论里给我一句赞美,小小成就都是今后继续为大家编写优质文章的动力! 欢迎您持续关注我的博客:)
    作者:Ken Wang
    版权所有,欢迎保留原文链接进行转载:)
  • 相关阅读:
    手把手教 从0开始搭建vue 脚手架项目
    利用vue.config.js 配置前端模拟接口技巧
    elementUI 穿梭框应用
    process.env.VUE_APP_BASE_API
    springcloud-Eureka组件
    mysql-常用组件之触发器
    mysql-常用组件之定时器
    springboot-整合多数据源配置
    【搞定面试官】- Synchronized如何实现同步?锁优化?(1)
    【搞定面试官】try中有return,finally还会执行吗?
  • 原文地址:https://www.cnblogs.com/ljj4490/p/10653716.html
Copyright © 2020-2023  润新知