diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4143c0b..fba7dca 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -29,6 +29,6 @@ jobs: run: | version=`git describe --tags` dotnet pack --configuration release -p:PackageVersion=$version - dotnet nuget push bin/release/YY-Tech.YYApi.$version.nupkg -k ${APIKEY} -s https://www.nuget.org/api/v2/package + dotnet nuget push bin/release/simcu.simapi.$version.nupkg -k ${NUGET_APIKEY} -s https://www.nuget.org/api/v2/package env: APIKEY: ${{ secrets.APPKEY }} diff --git a/Attributes/YYAuthAttribute.cs b/Attributes/SimApiAuthAttribute.cs similarity index 65% rename from Attributes/YYAuthAttribute.cs rename to Attributes/SimApiAuthAttribute.cs index 7307aa3..3d4a125 100644 --- a/Attributes/YYAuthAttribute.cs +++ b/Attributes/SimApiAuthAttribute.cs @@ -1,49 +1,49 @@ using System; using System.Linq; using Microsoft.AspNetCore.Mvc.Filters; -using YYApi.Communications; -using YYApi.Exceptions; +using SimApi.Communications; +using SimApi.Exceptions; -namespace YYApi.Attributes +namespace SimApi.Attributes { /// /// 检测登录中间件 /// [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)] - public class YYAuthAttribute : ActionFilterAttribute + public class SimApiAuthAttribute : ActionFilterAttribute { private string[] Types { get; } //默认是user登录类型 - public YYAuthAttribute() + public SimApiAuthAttribute() { Types = new[] { "user" }; } //只检测一种用户类型的快捷方式 - public YYAuthAttribute(string type) + public SimApiAuthAttribute(string type) { Types = new[] { type }; } //设定特定类型的检测 - public YYAuthAttribute(string[] types) + public SimApiAuthAttribute(string[] types) { Types = types; } public override void OnActionExecuting(ActionExecutingContext context) { - var loginInfo = (YYLoginItem)context.HttpContext.Items["LoginInfo"]; + var loginInfo = (SimApiLoginItem)context.HttpContext.Items["LoginInfo"]; //检测是否登录 if (loginInfo == null) { - throw new YYApiException(401); + throw new SimApiException(401); } //检测用户类型 if (Types.Intersect(loginInfo.Type).Count() == 0) { - throw new YYApiException(403); + throw new SimApiException(403); } } } diff --git a/Attributes/YYDocAttribute.cs b/Attributes/SimApiDocAttribute.cs similarity index 79% rename from Attributes/YYDocAttribute.cs rename to Attributes/SimApiDocAttribute.cs index 21972e2..534a0bb 100644 --- a/Attributes/YYDocAttribute.cs +++ b/Attributes/SimApiDocAttribute.cs @@ -1,20 +1,20 @@ using System; using Swashbuckle.AspNetCore.Annotations; -namespace YYApi.Attributes +namespace SimApi.Attributes { /// /// 快捷自定义接口文档类 /// [AttributeUsage(AttributeTargets.Method | AttributeTargets.Class)] - public class YYDocAttribute : SwaggerOperationAttribute + public class SimApiDocAttribute : SwaggerOperationAttribute { /// /// 定义接口说明 /// /// 接口分组 /// 接口名称 - public YYDocAttribute(string tag, string name) + public SimApiDocAttribute(string tag, string name) { Tags = new[] { tag }; Summary = name; diff --git a/Communications/YYBaseRequest.cs b/Communications/SimApiBaseRequest.cs similarity index 72% rename from Communications/YYBaseRequest.cs rename to Communications/SimApiBaseRequest.cs index 507c720..3f8c54b 100644 --- a/Communications/YYBaseRequest.cs +++ b/Communications/SimApiBaseRequest.cs @@ -1,10 +1,10 @@ using System; -namespace YYApi.Communications +namespace SimApi.Communications { /// /// 只有ID的请求 /// - public class YYIdOnlyRequest + public class SimApiIdOnlyRequest { public int Id { get; set; } } @@ -12,7 +12,7 @@ namespace YYApi.Communications /// /// 基础分页请求 /// - public class YYBasePageRequest + public class SimApiBasePageRequest { public int Page { get; set; } public int Count { get; set; } diff --git a/Communications/YYBaseResponse.cs b/Communications/SimApiBaseResponse.cs similarity index 90% rename from Communications/YYBaseResponse.cs rename to Communications/SimApiBaseResponse.cs index 04869e0..5a16652 100644 --- a/Communications/YYBaseResponse.cs +++ b/Communications/SimApiBaseResponse.cs @@ -2,12 +2,12 @@ using System.Text.Json; using System.Text.Json.Serialization; -namespace YYApi.Communications +namespace SimApi.Communications { /// /// 基础相应 /// - public class YYBaseResponse + public class SimApiBaseResponse { /// /// 错误代码 @@ -36,7 +36,7 @@ namespace YYApi.Communications /// /// 返回一个成功的空结果 /// - public YYBaseResponse() + public SimApiBaseResponse() { SetCode(200); } @@ -46,7 +46,7 @@ namespace YYApi.Communications /// 返回指定代码的描述 /// /// 错误代码 - public YYBaseResponse(int code) + public SimApiBaseResponse(int code) { SetCode(code); } @@ -56,7 +56,7 @@ namespace YYApi.Communications /// /// 错误代码 /// 错误信息 - public YYBaseResponse(int code, string message) + public SimApiBaseResponse(int code, string message) { SetCodeMsg(code, message); } @@ -104,7 +104,7 @@ namespace YYApi.Communications /// 动态内容分页 /// /// - public class YYBasePageResponse : YYBaseResponse + public class SimApiBasePageResponse : SimApiBaseResponse { /// /// 动态内容列表 @@ -122,7 +122,7 @@ namespace YYApi.Communications /// 动态Data返回 /// /// - public class YYBaseResponse : YYBaseResponse + public class SimApiBaseResponse : SimApiBaseResponse { /// /// 动态内容列表 diff --git a/Communications/YYLoginItem.cs b/Communications/SimApiLoginItem.cs similarity index 78% rename from Communications/YYLoginItem.cs rename to Communications/SimApiLoginItem.cs index 0923526..68d978a 100644 --- a/Communications/YYLoginItem.cs +++ b/Communications/SimApiLoginItem.cs @@ -1,10 +1,10 @@ using System; -namespace YYApi.Communications +namespace SimApi.Communications { /// /// 登录信息中间件 /// - public class YYLoginItem + public class SimApiLoginItem { //登录用户的ID public int Id { get; set; } diff --git a/Controllers/YYBaseController.cs b/Controllers/SimApiBaseController.cs similarity index 85% rename from Controllers/YYBaseController.cs rename to Controllers/SimApiBaseController.cs index 261ebac..2482c71 100644 --- a/Controllers/YYBaseController.cs +++ b/Controllers/SimApiBaseController.cs @@ -1,12 +1,12 @@ -using YYApi.Communications; +using SimApi.Communications; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.AspNetCore.Mvc.ModelBinding; using System.Linq; -using YYApi.Exceptions; -using YYApi.Attributes; +using SimApi.Exceptions; +using SimApi.Attributes; -namespace YYApi.Controllers +namespace SimApi.Controllers { /// /// 基础控制器,所有控制器均继承本控制器 @@ -14,12 +14,12 @@ namespace YYApi.Controllers /// 2. 报错返回 /// 3. 错误回馈页面 /// - public class YYBaseController : Controller + public class SimApiBaseController : Controller { /// /// 当前登录用户的ID /// - protected YYLoginItem LoginInfo => (YYLoginItem)HttpContext.Items["LoginInfo"]; + protected SimApiLoginItem LoginInfo => (SimApiLoginItem)HttpContext.Items["LoginInfo"]; /// /// 验证请求参数 @@ -49,7 +49,7 @@ namespace YYApi.Controllers /// protected static void Error(int code = 500, string message = "") { - throw new YYApiException(code, message); + throw new SimApiException(code, message); } /// @@ -81,11 +81,11 @@ namespace YYApi.Controllers /// 上传文件 /// /// - protected YYBaseResponse UploadFile() + protected SimApiBaseResponse UploadFile() { - return new YYBaseResponse(); + return new SimApiBaseResponse(); } - + } } \ No newline at end of file diff --git a/Controllers/YYCommonController.cs b/Controllers/SimApiCommonController.cs similarity index 56% rename from Controllers/YYCommonController.cs rename to Controllers/SimApiCommonController.cs index 0929097..d1e5e9e 100644 --- a/Controllers/YYCommonController.cs +++ b/Controllers/SimApiCommonController.cs @@ -1,16 +1,16 @@ using System; using Microsoft.AspNetCore.Mvc; -using YYApi.Attributes; -using YYApi.Communications; -using YYApi.Helpers; +using SimApi.Attributes; +using SimApi.Communications; +using SimApi.Helpers; -namespace YYApi.Controllers +namespace SimApi.Controllers { - public class YYCommonController : YYBaseController + public class YYCommonController : SimApiBaseController { - private YYAuth Auth { get; } + private SimApiAuth Auth { get; } - public YYCommonController(YYAuth auth) + public YYCommonController(SimApiAuth auth) { Auth = auth; } @@ -22,9 +22,9 @@ namespace YYApi.Controllers /// [HttpGet("exception/{code:int}")] [ApiExplorerSettings(IgnoreApi = true)] - public YYBaseResponse ExceptionHandler(int code) + public SimApiBaseResponse ExceptionHandler(int code) { - var response = new YYBaseResponse(); + var response = new SimApiBaseResponse(); response.SetCode(code); return response; } @@ -33,19 +33,19 @@ namespace YYApi.Controllers /// 检测用户登陆的控制器 /// /// - [HttpPost("/auth/check"), YYDoc("认证", "检测登陆")] - public YYBaseResponse CheckLogin() + [HttpPost("/auth/check"), SimApiDoc("认证", "检测登陆")] + public SimApiBaseResponse CheckLogin() { ErrorWhenNull(LoginInfo, 401); - return new YYBaseResponse { Data = LoginInfo.Id }; + return new SimApiBaseResponse { Data = LoginInfo.Id }; } /// /// 退出登陆 /// /// - [HttpPost("/auth/logout"), YYDoc("认证", "退出登陆")] - public YYBaseResponse Logout() + [HttpPost("/auth/logout"), SimApiDoc("认证", "退出登陆")] + public SimApiBaseResponse Logout() { string token = null; @@ -54,7 +54,7 @@ namespace YYApi.Controllers token = Request.Headers["Token"]; } Auth.Logout(token); - return new YYBaseResponse(); + return new SimApiBaseResponse(); } } } diff --git a/Exceptions/YYApiException.cs b/Exceptions/SimApiException.cs similarity index 54% rename from Exceptions/YYApiException.cs rename to Exceptions/SimApiException.cs index 08f9a3d..b3cd116 100644 --- a/Exceptions/YYApiException.cs +++ b/Exceptions/SimApiException.cs @@ -1,14 +1,14 @@ using System; -namespace YYApi.Exceptions +namespace SimApi.Exceptions { /// /// Api错误捕获异常 /// - public class YYApiException : Exception + public class SimApiException : Exception { public int Code { get; } - public YYApiException(int code, string message = "") : base(message) + public SimApiException(int code, string message = "") : base(message) { Code = code; } diff --git a/Helpers/YYAuth.cs b/Helpers/SimApiAuth.cs similarity index 88% rename from Helpers/YYAuth.cs rename to Helpers/SimApiAuth.cs index 1c12fcd..f7c82ac 100644 --- a/Helpers/YYAuth.cs +++ b/Helpers/SimApiAuth.cs @@ -2,18 +2,18 @@ using System; using System.Text.Json; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Caching.Distributed; -using YYApi.Communications; +using SimApi.Communications; -namespace YYApi.Helpers +namespace SimApi.Helpers { /// /// 认证助手 /// - public class YYAuth + public class SimApiAuth { private IDistributedCache Cache { get; } - public YYAuth(IDistributedCache cache) + public SimApiAuth(IDistributedCache cache) { Cache = cache; } @@ -40,7 +40,7 @@ namespace YYApi.Helpers { uuid = Guid.NewGuid().ToString(); } - var loginItem = new YYLoginItem + var loginItem = new SimApiLoginItem { Id = id, Type = type diff --git a/Helpers/YYUpload.cs b/Helpers/SimApiUpload.cs similarity index 87% rename from Helpers/YYUpload.cs rename to Helpers/SimApiUpload.cs index c1ef58f..92f12eb 100644 --- a/Helpers/YYUpload.cs +++ b/Helpers/SimApiUpload.cs @@ -2,9 +2,9 @@ using System.IO; using Microsoft.AspNetCore.Hosting; -namespace YYApi.Helpers +namespace SimApi.Helpers { - public class YYUpload + public class SimApiUpload { private string FilePathFolder = "/uploads/"; public string FilePath @@ -28,12 +28,12 @@ namespace YYApi.Helpers private IWebHostEnvironment Env { get; } - public YYUpload(IWebHostEnvironment env) + public SimApiUpload(IWebHostEnvironment env) { Env = env; } - public class YYUploadInfo + public class SimApiUploadInfo { public string Path { get; set; } public int Size { get; set; } @@ -47,7 +47,7 @@ namespace YYApi.Helpers /// 存放路径 /// 文件名 /// - public YYUploadInfo SaveFile(string base64, string ext = null, string path = null, string fileName = null) + public SimApiUploadInfo SaveFile(string base64, string ext = null, string path = null, string fileName = null) { byte[] bt; var filePath = FilePath + path; @@ -85,7 +85,7 @@ namespace YYApi.Helpers /// /// /// - public YYUploadInfo WriteFile(string filePath, string fileName, byte[] data) + public SimApiUploadInfo WriteFile(string filePath, string fileName, byte[] data) { var realPath = Directory.GetCurrentDirectory() + "/wwwroot" + filePath; if (!Directory.Exists(realPath)) @@ -93,7 +93,7 @@ namespace YYApi.Helpers Directory.CreateDirectory(realPath); } File.WriteAllBytes(realPath + fileName, data); - return new YYUploadInfo + return new SimApiUploadInfo { Path = filePath + fileName, Size = data.Length diff --git a/Helpers/YYUtil.cs b/Helpers/SimApiUtil.cs similarity index 94% rename from Helpers/YYUtil.cs rename to Helpers/SimApiUtil.cs index b2cd178..378aa3d 100644 --- a/Helpers/YYUtil.cs +++ b/Helpers/SimApiUtil.cs @@ -3,9 +3,9 @@ using System.Security.Cryptography; using System.Text; using System.Text.RegularExpressions; -namespace YYApi.Helpers +namespace SimApiApi.Helpers { - public static class YYUtil + public static class SimApiUtil { /// /// 检测手机号是否正确 diff --git a/Middlewares/YYAuthMiddleware.cs b/Middlewares/SimApiAuthMiddleware.cs similarity index 82% rename from Middlewares/YYAuthMiddleware.cs rename to Middlewares/SimApiAuthMiddleware.cs index 77b3603..a02b65a 100644 --- a/Middlewares/YYAuthMiddleware.cs +++ b/Middlewares/SimApiAuthMiddleware.cs @@ -2,18 +2,18 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Caching.Distributed; -using YYApi.Communications; +using SimApi.Communications; -namespace YYApi.Middlewares +namespace SimApi.Middlewares { /// /// 认证信息获取中间件 /// - public class YYAuthMiddleware + public class SimApiAuthMiddleware { private RequestDelegate Next { get; } - public YYAuthMiddleware(RequestDelegate next) + public SimApiAuthMiddleware(RequestDelegate next) { Next = next; } @@ -31,7 +31,7 @@ namespace YYApi.Middlewares var login = cache.GetString(token); if (login != null) { - httpContext.Items.Add("LoginInfo", JsonSerializer.Deserialize(login)); + httpContext.Items.Add("LoginInfo", JsonSerializer.Deserialize(login)); } } diff --git a/Middlewares/YYExceptionMiddleware.cs b/Middlewares/SimApiExceptionMiddleware.cs similarity index 72% rename from Middlewares/YYExceptionMiddleware.cs rename to Middlewares/SimApiExceptionMiddleware.cs index 8dd84be..626c816 100644 --- a/Middlewares/YYExceptionMiddleware.cs +++ b/Middlewares/SimApiExceptionMiddleware.cs @@ -1,21 +1,21 @@ using System; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; -using YYApi.Communications; +using SimApi.Communications; using Microsoft.Extensions.Logging; -using YYApi.Exceptions; +using SimApi.Exceptions; -namespace YYApi.Middlewares +namespace SimApi.Middlewares { /// /// 异常处理中间件 /// - public class YYExceptionMiddleware + public class SimApiExceptionMiddleware { private RequestDelegate Next { get; } - private ILogger Log { get; } + private ILogger Log { get; } - public YYExceptionMiddleware(RequestDelegate next, ILogger log) + public SimApiExceptionMiddleware(RequestDelegate next, ILogger log) { Log = log; Next = next; @@ -23,12 +23,12 @@ namespace YYApi.Middlewares public async Task InvokeAsync(HttpContext context) { - var response = new YYBaseResponse(); + var response = new SimApiBaseResponse(); try { await Next(context); } - catch (YYApiException ex) + catch (SimApiException ex) { response.SetCodeMsg(ex.Code, ex.Message); ErrorResponse(context, response); @@ -47,7 +47,7 @@ namespace YYApi.Middlewares /// /// /// - private void ErrorResponse(HttpContext context, YYBaseResponse response) + private void ErrorResponse(HttpContext context, SimApiBaseResponse response) { context.Response.StatusCode = 200; context.Response.Headers.Add("Content-Type", "application/json"); diff --git a/README.md b/README.md index e0b51de..b800e72 100644 --- a/README.md +++ b/README.md @@ -9,15 +9,16 @@ ```C# using Models; +using SimApi.Controllers; namespace Controllers { - public class BaseController : YYApi.Controllers.BaseController + public class BaseController : SimApiBaseController { /// /// 获取登录用户信息 /// - protected LoginInfoItem LoginInfo => (LoginInfoItem) HttpContext.Items["LoginInfo"]; + protected SimApiLoginInfoItem LoginInfo => (SimApiLoginInfoItem) HttpContext.Items["LoginInfo"]; } } ``` @@ -27,32 +28,32 @@ namespace Controllers ```C# #Startup.cs - services.AddYYDoc("文档名称", "文档描述"); + services.AddSimApiDoc("文档名称", "文档描述"); - app.UseYYDoc("名称",SubmitMethod[]) + app.UseSimApiDoc("名称",SubmitMethod[]) #控制器中可以直接使用特性 - [YYDoc("分组","名称")] + [SimApiDoc("分组","名称")] ``` 3. 简单的基于Redis的登录TOKEN服务 ```C# #Startup.cs -service.AddYYAuth(); +service.AddSimApiAuth(); ``` 添加时候, 可以从DI中获取 Auth 类,调用 Auth.Set(int,string) 将用户ID/类型和生成的Token绑定,本方法返回缓存中的Key名称 ```C# #Startup.cs -app.UseYYAuth(); +app.UseSimApiAuth(); ``` 调用本中间件,然后再需要登录认证的地方,使用 [YYAuth] 特性,即可完成检测登录相关的操作, 如果需要获取用户的ID, 只需要 直接使用 LoginId 属性即可获取 4. 统一返回 -所有Response 均需要继承 BaseResponse类 +所有Response 均需要继承 SimApiBaseResponse类 5. 异常处理 @@ -60,9 +61,5 @@ app.UseYYAuth(); ```C# #Startup.cs -app.UseYYException(); -``` - - -### TODO: -1. 增加HANGFIRE 支持redis和sqlite 存储, 支持 基于其他系统的TOKEN认证和独立账号密码认证 +app.UseSimApiException(); +``` \ No newline at end of file diff --git a/YYApi.csproj b/SimApi.csproj similarity index 91% rename from YYApi.csproj rename to SimApi.csproj index e2f7fa0..552def5 100644 --- a/YYApi.csproj +++ b/SimApi.csproj @@ -5,9 +5,9 @@ Library true 0.2.3 - xRain@YYTech + xRain@SimcuTeam AspNetCore一个方便的API文档,捕获异常,统一输入输出的API类库 - YY-Tech.YYApi + simcu.simapi true snupkg true diff --git a/Extensions.cs b/SimApiExtensions.cs similarity index 71% rename from Extensions.cs rename to SimApiExtensions.cs index db5a3b3..07953fa 100644 --- a/Extensions.cs +++ b/SimApiExtensions.cs @@ -1,12 +1,12 @@ using System; -using YYApi.Helpers; +using SimApi.Helpers; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; using Microsoft.OpenApi.Models; using Swashbuckle.AspNetCore.SwaggerUI; -using YYApi.Middlewares; +using SimApi.Middlewares; -namespace YYApi +namespace SimApi { /// /// 加入系统的扩展信息 @@ -16,29 +16,29 @@ namespace YYApi //**********快捷添加************** /// - /// 添加整个YYAPI,同时增加CORS规则 + /// 添加整个SimApiAPI,同时增加CORS规则 /// /// /// /// /// - public static IServiceCollection AddYYApi(this IServiceCollection builder, string title, + public static IServiceCollection AddSimApiApi(this IServiceCollection builder, string title, string description = null) { - return builder.AddYYAuth().AddYYDoc(title, description).AddCors().AddYYUpload(); + return builder.AddSimApiAuth().AddSimApiDoc(title, description).AddCors().AddSimApiUpload(); } /// - /// 使用所有YYApi自定义中间件 + /// 使用所有SimApiApi自定义中间件 /// /// /// /// /// /// - public static IApplicationBuilder UseYYApi(this IApplicationBuilder builder, string title = "API文档", params SubmitMethod[] submitMethods) + public static IApplicationBuilder UseSimApiApi(this IApplicationBuilder builder, string title = "API文档", params SubmitMethod[] submitMethods) { - return builder.UseYYException().UseYYDoc(title, submitMethods).UseMiddleware().UseCors(x => x.AllowAnyHeader().AllowAnyMethod().AllowAnyOrigin()).UseYYUpload(); + return builder.UseSimApiException().UseSimApiDoc(title, submitMethods).UseMiddleware().UseCors(x => x.AllowAnyHeader().AllowAnyMethod().AllowAnyOrigin()).UseSimApiUpload(); } @@ -50,9 +50,9 @@ namespace YYApi /// /// /// - public static IServiceCollection AddYYAuth(this IServiceCollection builder) + public static IServiceCollection AddSimApiAuth(this IServiceCollection builder) { - return builder.AddScoped(); + return builder.AddScoped(); } /// @@ -60,9 +60,9 @@ namespace YYApi /// /// /// - public static IServiceCollection AddYYUpload(this IServiceCollection builder) + public static IServiceCollection AddSimApiUpload(this IServiceCollection builder) { - return builder.AddSingleton(); + return builder.AddSingleton(); } /// @@ -72,7 +72,7 @@ namespace YYApi /// 文档标题 /// 文档描述 /// - public static IServiceCollection AddYYDoc(this IServiceCollection builder, string title, + public static IServiceCollection AddSimApiDoc(this IServiceCollection builder, string title, string description = null) { return builder.AddSwaggerGen(x => @@ -100,9 +100,9 @@ namespace YYApi /// /// /// - public static IApplicationBuilder UseYYException(this IApplicationBuilder builder) + public static IApplicationBuilder UseSimApiException(this IApplicationBuilder builder) { - return builder.UseMiddleware(); + return builder.UseMiddleware(); } /// @@ -110,7 +110,7 @@ namespace YYApi /// /// /// - public static IApplicationBuilder UseYYUpload(this IApplicationBuilder builder) + public static IApplicationBuilder UseSimApiUpload(this IApplicationBuilder builder) { return builder.UseStaticFiles(new StaticFileOptions { @@ -126,7 +126,7 @@ namespace YYApi /// 文档标题 /// 文档支持的提交方式(如果不指定,默认使用POST) /// - public static IApplicationBuilder UseYYDoc(this IApplicationBuilder builder, string title, + public static IApplicationBuilder UseSimApiDoc(this IApplicationBuilder builder, string title, params SubmitMethod[] submitMethods) { return builder.UseSwagger(x => x.RouteTemplate = "docs/{documentName}.json").UseSwaggerUI(x => @@ -156,10 +156,10 @@ namespace YYApi /// 文档标题 /// API提交方式定义 /// - public static IApplicationBuilder UseYYDocEx(this IApplicationBuilder builder, string title = "API文档", + public static IApplicationBuilder UseSimApiDocEx(this IApplicationBuilder builder, string title = "API文档", params SubmitMethod[] submitMethods) { - return builder.UseYYException().UseYYDoc(title, submitMethods); + return builder.UseSimApiException().UseSimApiDoc(title, submitMethods); } /// @@ -167,9 +167,9 @@ namespace YYApi /// /// /// - public static IApplicationBuilder UseYYAuth(this IApplicationBuilder builder) + public static IApplicationBuilder UseSimApiAuth(this IApplicationBuilder builder) { - return builder.UseMiddleware(); + return builder.UseMiddleware(); }