• Asp.Net WebApi swagger使用教程


    swagger简介

    别名:丝袜哥

    功能:用于生产api文档

    swagger安装

    Nuget搜索swagger,然后安装Swashbuckle

    swagger使用

    生成api的xml文档

    webapi项目右键——属性——生产——输出

    汉化Swagger

    新建一个js,目录/Scripts/Swagger/swagger_lang.js,属性设置为[嵌入的资源]

    设置Swagger

    修改/App_Start/SwaggerConfig.cs,注意xml地

    复制代码
    using System.Web.Http;
    using WebActivatorEx;
    using cms.WebApi;
    using Swashbuckle.Application;
    
    [assembly: PreApplicationStartMethod(typeof(SwaggerConfig), "Register")]
    
    namespace cms.WebApi
    {
        public class SwaggerConfig
        {
            public static void Register()
            {
                var thisAssembly = typeof(SwaggerConfig).Assembly;
    
                GlobalConfiguration.Configuration
                    .EnableSwagger(c =>
                    {
                        c.SingleApiVersion("v1", "cms.WebApi");
                        c.IncludeXmlComments(string.Format("{0}/App_Data/cms.WebApi.XML", System.AppDomain.CurrentDomain.BaseDirectory));//设置xml地址
                    })
                    .EnableSwaggerUi(c =>
                    {
                        c.DocumentTitle("My webapi");
                        c.InjectJavaScript(thisAssembly, "cms.WebApi.Scripts.Swagger.swagger_lang.js");//汉化js
                    });
            }
        }
    }
    复制代码

    控制器

    复制代码
    // GET api/values
            /// <summary>
            /// get请求1
            /// </summary>
            /// <returns></returns>
            public IEnumerable<string> Get()
            {
                return new string[] { "value1", "value2" };
            }
    
            // GET api/values/5
            /// <summary>
            /// get请求2
            /// </summary>
            /// <param name="id"></param>
            /// <returns></returns>
            public string Get(int id)
            {
                return "value";
            }
    复制代码

    运行测试

    访问地址:http://localhost:30022/swagger/

    注意:刚开始我的webapi和mvc在一个项目中,导致汉化失败,汉化js路径找不到。然后把webapi单独一个项目后正常了,坑啊!!!

    end

  • 相关阅读:
    [转] 使用Git进行小项目代码管理
    [转] Linux抓包工具tcpdump详解
    几天都是气温骤降,感冒了还没有收获
    1128进入自学实习培训路
    hdu 4952
    hdu 4937 2014 Multi-University Training Contest 7 1003
    hdu 4941 2014 Multi-University Training Contest 7 1007
    hdu 4939 2014 Multi-University Training Contest 7 1005
    hdu 4932 BestCoder Round #4 1002
    POJ 2362
  • 原文地址:https://www.cnblogs.com/simadi/p/15562155.html
Copyright © 2020-2023  润新知