zoukankan      html  css  js  c++  java
  • Web API 接口测试工具:WebApiTestClient

    • WebApiTestClient是一个开源组件,开源地址:https://github.com/yaohuang/WebApiTestClient
    • WebApiTestClient组件的作用
      • 将Web API的接口展示在浏览器中,可以通过http://localhost:61218/help这样的地址访问help页面,就能看的这个服务中所有的API接口以及接口的详细说明
      • 需要在API中的类、方法、参数、返回值使用XML注释进行说明
      • 可以修改Http请求头文件Head请求体Body里面的参数,指定发生Http请求的特性,比如修改ContentType指定的参数
    • 通过Nuget引入组件
    • 引入成功后,将向项目里面添加一些主要文件:
      • ScriptsWebApiTestClient.js
      • AreasHelpPageTestClient.css
      • AreasHelpPageViewsHelpDisplayTemplatesTestClientDialogs.cshtml
      • AreasHelpPageViewsHelpDisplayTemplatesTestClientReferences.cshtml
    • 修改Api.cshtml文件(AreasHelpPageViewsHelpApi.cshtml)
    1 @Html.DisplayForModel("TestClientDialogs")
    2 @section scripts{
    3     <link type="text/css" href="~/Areas/HelpPage/HelpPage.css" rel="stylesheet" />
    4     @Html.DisplayForModel("TestClientReferences")
    5 }
    • 配置读取注释的xml路径:在项目上面点右键→属性→生成标签页配置xml的路径
    • 在xml的读取路径:在下图的HelpPageConfig.cs(AreasHelpPageApp_StartHelpPageConfig.cs)里面配置,指定xml的读取路径
    1 public static void Register(HttpConfiguration config){
    2     config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/WebApiTestClient.XML")));
    3 }
    • 准备测试接口
    /// <summary>
    /// 测试API Test Client
    /// </summary>
    public class TestChargingDataController : ApiController{
        /// <summary>
        /// 得到所有数据
        /// </summary>
        /// <returns>返回数据</returns>
        [HttpGet]
        public string GetAllChargingData(){
            return "ChargingData";
        }
        /// <summary>
        /// 得到当前Id的所有数据
        /// </summary>
        /// <param name="id">参数Id</param>
        /// <returns>返回数据</returns>
        [HttpGet]
        public string GetAllChargingData(string id){
            return "ChargingData" + id ;
        }
        /// <summary>
        /// Post提交
        /// </summary>
        /// <param name="oData">对象</param>
        /// <returns>提交是否成功</returns>
        [HttpPost]
        public bool Post(TB_CHARGING oData){
            return true;
        }
        /// <summary>
        /// Put请求
        /// </summary>
        /// <param name="oData">对象</param>
        /// <returns>提交是否成功</returns>
        [HttpPut]
        public bool Put(TB_CHARGING oData){
            return true;
        }
        /// <summary>
        /// delete操作
        /// </summary>
        /// <param name="id">对象id</param>
        /// <returns>操作是否成功</returns>
        [HttpDelete]
        public bool Delete(string id){
            return true;
        }
    }
    /// <summary>
    /// 充电对象实体
    /// </summary>
    public class TB_CHARGING{
        /// <summary>
        /// 主键Id
        /// </summary>
        public string ID { get; set; }
        /// <summary>
        /// 充电设备名称
        /// </summary>
        public string NAME { get; set; }
        /// <summary>
        /// 充电设备描述
        /// </summary>
        public string DES { get; set; }
        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CREATETIME { get; set; }
    }
    • 接口列表
    • 查看API接口详细信息,比如打开GET api/TestChargingData
    • 点击Test API按钮,在点击Send按钮得到第二张图片(发生get请求之后的结果)
    • 相对应的我们打开GET api/TestChargingData/{id},此时可以输入id参数
    • 对于POST api/TestChargingData请求,需要上传对象,在post请求上如果需要执行参数长度和类型,可以通过content-lengthcontent-type来指定;并且具体的参数可以指定不同格式显示,比如下图的application/json,或者可以选择application/xml
     
     
     
  • 相关阅读:
    day16-bootstrap和django
    day18-2-django之分页和session
    day17-django的ORM与其他
    day18--django3之Ajax
    day12--前端基础之css
    day12--前端基础之html
    面向对象高级、异常处理和socket
    回归python培训——类与对象、继承、多态和多态性、封装、绑定方法和非绑定方法、反射
    python函数、装饰器、迭代器、生成器
    nginx反向代理时保持长连接
  • 原文地址:https://www.cnblogs.com/My-Sun-Shine/p/13509587.html
Copyright © 2011-2022 走看看