C#API接口调试工具

摘要:
下面介绍两种用于调试后台接口的工具。下面我们只需要做一件事:打开文件Api.cshtml并添加以下内容:@Html.DisplayForModel@Html.DisplayForModel添加后Api.cshtml文件的代码如下@usingSystem.Web.Http@usingWebApiTestClient.Areas.HelpPage.Models@modelHelpPageApiModel@{vardescription=Model.ApiDescription;ViewBag.Title=description.HttpMethod.Method+""+description.RelativePath;}@Html.ActionLink@Html.DisplayForModel()@Html.DisplayForModel@sectionScripts{@Html.DisplayForModel}2、配置读取注释的xml路径其实,通过上面的步骤,我们的项目已经可以跑起来了,也可以调用接口测试。但是,还不能读取///注释里面的东西。配置生成xml的路径。我们在项目上面点右键→属性→生成标签页配置xml的路径在xml的读取路径:在下图的HelpPageConfig.cs里面配置一句话,指定xml的读取路径。

自从去年软件界网站开发推崇前后端分离,我们公司也在进行转行行,从原先的前端架构,后端架构,数据库搭建一肩挑的模式也逐渐转型为前后端分离,大量招收前端开发人员,原来的人员也转型为专职的后端开发,这样的变化就对于后端开发人员的接口调试带来了一定的麻烦,在原来的前后端一起的开发模式下,我们可以利用前端的请求直接后台打断点进行调试,然而进行了前后端分离以后,直接叫前端开发人员帮忙发请求再进行大断点调试是不可能的了,因此我们后端开发人员就应该寻找调试接口的代替方案,用来提高我们的工作效率。下面介绍两种用于调试后台接口的工具。

一:swagger在.net中使用

1.NuGet包安装

Install-PackageSwashbuckle.core 主程序上引用(启动项) 管理NuGet里面搜索安装

2.安装之后会在App_Start文件夹中添加SwaggerConfig.cs类,该类中的Register()方法会在应用程序启动的时候调用

3.启用生成xml文档,右击项目文件属性,生成

C#API接口调试工具第1张

4.配置SwaggerConfig.cs (方法一) 实际上是读取生成的xml文件路径

复制代码
 public classSwaggerConfig
    {
        public static voidRegister()
        {
            Swashbuckle.Bootstrapper.Init(GlobalConfiguration.Configuration);
 
            //NOTE: If you want to customize the generated swagger or UI, use SwaggerSpecConfig and/or SwaggerUiConfig here ...

SwaggerSpecConfig.Customize(c =>{ c.IncludeXmlComments(GetXmlCommentsPath()); }); } protected static stringGetXmlCommentsPath() { return System.String.Format(@"{0}inWebApiSwagger.XML", System.AppDomain.CurrentDomain.BaseDirectory); } }
复制代码

4.配置SwaggerConfig.cs (方法二)

复制代码
 public classSwaggerConfig
    {
        public static voidRegister()
        {
            Swashbuckle.Bootstrapper.Init(GlobalConfiguration.Configuration);
 
            //NOTE: If you want to customize the generated swagger or UI, use SwaggerSpecConfig and/or SwaggerUiConfig here ...
SwaggerSpecConfig.Customize(c =>{
                c.IncludeXmlComments(GetXmlCommentsPath(thisAssembly.GetName().Name()));
            });
        }
 
        protected static stringGetXmlCommentsPath(string name)
        {
            return System.String.Format(@"{0}in{1}.xml", System.AppDomain.CurrentDomain.BaseDirectory,name);
        }
    }

复制代码

5.浏览地址:http://localhost:50453/swagger/ui/index.html(应用程序的地址+api+swagger)就可以看到了

二:使用WebApiTestClient 测试工具

2:如何引入组件:右击API项目管理NuGet里面搜索安装 a sample test client for ASP.net Web API

引入成功后,将向项目里面添加一些主要文件:

  • ScriptsWebApiTestClient.js
  • AreasHelpPageTestClient.css
  • AreasHelpPageViewsHelpDisplayTemplatesTestClientDialogs.cshtml
  • AreasHelpPageViewsHelpDisplayTemplatesTestClientReferences.cshtml

2、如何使用组件

、修改Api.cshtml文件

通过上述步骤,就能将组件WebAPITestClient引入进来。下面我们只需要做一件事:打开文件 (根据 AreasHelpPageViewsHelp) Api.cshtml 并添加以下内容:

  • @Html.DisplayForModel("TestClientDialogs")
  • @Html.DisplayForModel("TestClientReferences")

添加后Api.cshtml文件的代码如下

复制代码
@using System.Web.Http
@using WebApiTestClient.Areas.HelpPage.Models
@model HelpPageApiModel

@{
    var description = Model.ApiDescription;
    ViewBag.Title = description.HttpMethod.Method + " " + description.RelativePath;
}

<link type="text/css"href="~/Areas/HelpPage/HelpPage.css"rel="stylesheet" />
<div id="body"class="help-page">
    <section class="featured">
        <div class="content-wrapper">
            <p>@Html.ActionLink("Help Page Home", "Index")
            </p>
        </div>
    </section>
    <section class="content-wrapper main-content clear-fix">@Html.DisplayForModel()
    </section>
</div>
@Html.DisplayForModel("TestClientDialogs")
@section Scripts{
    <link href="~/Areas/HelpPage/HelpPage.css"rel="stylesheet" />@Html.DisplayForModel("TestClientReferences")
}
复制代码

2、配置读取注释的xml路径

其实,通过上面的步骤,我们的项目已经可以跑起来了,也可以调用接口测试。但是,还不能读取///<summary>注释里面的东西。需要做如下配置才行。

(1)配置生成xml的路径。我们在项目上面点右键→属性→生成标签页配置xml的路径

C#API接口调试工具第8张

(2)在xml的读取路径:在下图的HelpPageConfig.cs里面配置一句话,指定xml的读取路径。

C#API接口调试工具第9张

这句代码如下:

config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/WebApiTestClient.XML")));

至此,环境就搭完了,剩下的就是运行了。我们在url里面敲地址http://localhost:8080/Help/Index或者http://localhost:8080/Help就能得到你的API列表。

免责声明:文章转载自《C#API接口调试工具》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇jqGrid的Fomatter用于将图片url地址转换成前端图片显示的使用MinGW安装gcc下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

android自定义控件及自定义组合控件

一、构建自定义控件 构建自定义组件 Android中,你的应用程序程序与View类组件有着一种固定的联系,例如按钮(Button)、文本框(TextView),可编辑文本框(EditText),列表框(ListView),复选框(CheckBox),单选框(RadioButton),滚动条(Gallery),微调器(Spinner), 等等,还有一些比较先...

JSP不支持EL表达式的解决方案

EL的全称是Expression Language。 1.在默认情况下,Servlet 2.3 / JSP 1.2是不支持EL表达式的,而Servlet 2.4 / JSP 2.0支持。 servlets 2.4这个版本的isELIgnored默认设置为false。所以使用web.xml里用web-app_2_4.xsd声明的时候在JSP页面不用特意声明...

利用OpenXml生成Word2007文档

一、OpenXml简介 利用C#生成Word文档并非一定要利用OpenXml技术,至少可以使用微软提供的Office相关组件来编程,不过对于Office2007(确切的说是Word、Excel和PowerPoint2007)及以上版本,微软提供了这些信息组织的另外一种思路:OpenXml技术。         OpenXml是微软office2007及之后...

xml中“ &amp;lt; &amp;gt; ”转义为“ &amp;amp;lt; &amp;amp;gt; ”问题处理

曾经也碰到过类似问题,解决方法是在发送或者解析报文前执行上面的方法将内容转义一下,现在我用dom4j组装如下的报文(报文体中内容传输时加密处理),大致介绍一下上面方法的使用,具体看代码。 importjava.io.StringReader; importjava.io.StringWriter; importjava.math.BigDecima...

JavaEE XML StAX创建

StAX创建XML文档 @author ixenos  1、 如果通过DOM树来创建XML文件时,发现这个DOM树没有其他用途,那么这种方式就不是很高效,这时我们可以使用StAX API直接将XML树写出,而不用去创建DOM树 2、 //从某个OutputStream构建一个XMLStreamWriter XMLOutputFactory factory...

[软件过程/软件生命周期模型]软件过程的工具链【待续】

0 宣言:DevOps & RUP统一过程建模 1 项目管理 (需求管理 / 缺陷管理 / ...) 禅道(前身:bugfree) [在线协作] JIRA(项目与事务跟踪工具) 与禅道类同,但又不同,有明显的Scrum敏捷风格 Microsoft Project [离线维护] 在线文档 or Excel 2 系统建模 2....