安使webapi集成swagger

安使webapi集成swagger

  现在B/S开发中,前后端分离的已经化为同种新的时尚,可是咋样将后端开发之接口更好的提供被前段开发也?还用接口文档?low了咔嚓。不仅要花费时开接口,还得花费时间写文档,白花花的时刻抢浪费了啊。假使接口需要调整,还得改变文档,这功能不用说了,肯定特别。今儿思明和豪门分享同首而视化webapi接口开发,就是错开集成swagger。

葡京娱乐棋牌官网,  先来大概介绍一下:Swagger
是一个正规与完全的框架,用于转移、描述、调用和可视化 RESTful 风格的 Web
服务。总体目标是设客户端和文件系统作为服务器因为相同的速度来更新。文件之法子,参数与模型紧密集成至劳动器端的代码,允许API来镇维持并。Swagger
让部署管理及运功能强大的API从未如此简约。

     下边介绍一下实际贯彻过程:

1、新建一个种aps.net web 应用程序

葡京娱乐棋牌官网 1

2、采纳 empty–>要旨引用接纳 MVC和web api

葡京娱乐棋牌官网 2

3、采取新建的种右击,在菜单中拔取NuGet程序包
右侧采用并,左侧输入框输入swagger

葡京娱乐棋牌官网 3

择之中的 Swashbuckle 和Swagger UI for .NET两单装

葡京娱乐棋牌官网 4

4、右击项目选菜单属性 –> 选用生成 –>
采纳输出xml文档文件,并输入不带来多余.的文书称

葡京娱乐棋牌官网 5

 

5、把正的公文称配置到 文件夹app_start中的 SwaggerConfig.cs 如下:

葡京娱乐棋牌官网 6

c.IncludeXmlComments(string.Format("{0}/bin/SelfSwaggerApi.XML", System.AppDomain.CurrentDomain.BaseDirectory));

 6、删除多余无用的宗

葡京娱乐棋牌官网 7

7、在文书夹Controllers中初砌一个 Web API 控制器类

葡京娱乐棋牌官网 8

8、直接运行。http://localhost:16650/swagger/ui/index 结果如下:

葡京娱乐棋牌官网 9

 

9、有些人不怀念直接运行vs就好自动跳反至 http://localhost:16650/swagger/ui/index
。也是能够的;如下:

于控制器中新增一个控制器 HomeController

using System.Web.Mvc;

namespace SelfSwaggerApi.Controllers
{
    public class HomeController : Controller
    {
        /// <summary>
        /// swagger 首页
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            return Redirect("/Swagger/ui/index");
        }
    }
}

  然后直接运行。。就是见证奇迹的随时。

 

备注:常见问题

未能加载文件要程序集“System.Web.Http, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35”或其的有一个

因剖析:程序所指的dll
和实在引用的dll不吻合,可以据此修改配置文件web.config的法门实现兼容

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Http.WebHost" publicKeyToken="31BF3856AD364E35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.2.2.0" newVersion="5.2.2.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Data" publicKeyToken="b77a5c561934e089" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

  齐活。码字不爱,转载请备注出处,网易思明奉上

 

admin

网站地图xml地图