DoNetCore Web Api 采用Swagger进行接口文档管理
第一步:创建API项目 步骤这里不说明
第二步:就是Nuget 包,
两种方式:1、工具-》Nuget管理-》程序包管理控制台 Install-Package Swashbuckle.AspNetCore
2、工具-》Nuget管理-》管理Nuget包... 或者右击项目。。。 输入 Swashbuckle.AspNetCore
第三步:全局配置,这里以最简单的配置为例
在Startup.cs 文件下 ConfigureService 下添加如下代码
services.AddSwaggerGen(opt => { opt.SwaggerDoc("v1", new Info { Title = "MyFirstApi", Version = "v1" }); });
在Configure 下添加如下代码
app.UseSwagger(); app.UseSwaggerUI(opt => { opt.SwaggerEndpoint("/swagger/v1/swagger.json", "MyFirstApi"); });
第四步:编写自己的接口
代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; namespace DoNetCoreApiSwagger.Controllers { [Route("api/[controller]")] [ApiController] public class userController : ControllerBase { private static List<User> listUser = null; public userController() { listUser.AddRange(new List<User> { new User(){ Id=1,userName="zhansan"} }); } [HttpGet("getuserlist")] public async Task<object> GetUserList(int userid) { return await Task.Run<object>(()=> { return new {code=200,data= listUser.FindAll(a=>a.Id==userid) }; }); } [HttpPost("adduser")] public async Task<object> AddUser([FromBody]User user) { return await Task.Run<object>(() => { listUser.Add(user); return new { code = 200, data="添加成功" }; }); } } public class User { public int Id { get; set; } public string userName { get; set; } } }
第五步:配置路由,但这里不进行配置了,就以修改文件的形式进行调整
修改launchSettings.json 文件
如下:
{ "iisSettings": { "windowsAuthentication": false, "anonymousAuthentication": true, "iisExpress": { "applicationUrl": "http://localhost:5000", "sslPort": 0 } }, "$schema": "http://json.schemastore.org/launchsettings.json", "profiles": { "IIS Express": { "commandName": "IISExpress", "launchBrowser": true, "launchUrl": "swagger/", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" } }, "DoNetCoreApiSwagger": { "commandName": "Project", "launchBrowser": true, "launchUrl": "swagger/", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development" }, "applicationUrl": "http://localhost:5000" } } }