diff --git a/Configurations/SimApiOptions.cs b/Configurations/SimApiOptions.cs
index 4f10fa2..27993b0 100644
--- a/Configurations/SimApiOptions.cs
+++ b/Configurations/SimApiOptions.cs
@@ -56,7 +56,6 @@ public class SimApiOptions
///
public bool EnableSimApiResponseFilter { get; set; } = true;
-
///
/// 开启ForwardHeaders,开启后可以透传负载均衡的Headers
/// default: true
@@ -69,24 +68,17 @@ public class SimApiOptions
///
public bool EnableLowerUrl { get; set; } = true;
-
- ///
- /// 应用可以通过 /versions 显示出应用版本和SimApi包版本
- /// default: true
- ///
- public bool EnableVersionUrl { get; set; } = true;
-
-
///
/// 启用格式化的 Console Logger
/// default: false
///
public bool EnableLogger { get; set; } = true;
-
+ ///
+ /// 是否启用SimApiHttpClient
+ ///
public bool EnableSimApiHttpClient { get; set; } = false;
-
///
/// 配置Job
///
@@ -110,6 +102,13 @@ public class SimApiOptions
public SimApiExceptionOptions SimApiExceptionOptions { get; set; } = new();
+ public SimApiRouteOptions SimApiRouteOptions { get; set; } = new();
+
+ public void ConfigureSimApiRoute(Action? options = null)
+ {
+ options?.Invoke(SimApiRouteOptions);
+ }
+
public void ConfigureSimApiException(Action? options = null)
{
options?.Invoke(SimApiExceptionOptions);
diff --git a/Configurations/SimApiRouteOptions.cs b/Configurations/SimApiRouteOptions.cs
new file mode 100644
index 0000000..847c643
--- /dev/null
+++ b/Configurations/SimApiRouteOptions.cs
@@ -0,0 +1,8 @@
+namespace SimApi.Configurations;
+
+public class SimApiRouteOptions
+{
+ public string? VersionRoute = "/versions";
+ public string? LogoutRoute = "/auth/logout";
+ public string? UserInfoRoute = "/user/info";
+}
\ No newline at end of file
diff --git a/Controllers/SimApiAuthController.cs b/Controllers/SimApiAuthController.cs
index 9bb52e5..fb7e6f7 100644
--- a/Controllers/SimApiAuthController.cs
+++ b/Controllers/SimApiAuthController.cs
@@ -5,8 +5,6 @@ using SimApi.Helpers;
namespace SimApi.Controllers;
-using static SimApiError;
-
public class SimApiAuthController(SimApiAuth auth) : SimApiBaseController
{
///
@@ -21,5 +19,11 @@ public class SimApiAuthController(SimApiAuth auth) : SimApiBaseController
auth.Logout(value!);
}
}
-
+
+ ///
+ /// 获取已登录用户信息
+ ///
+ ///
+ [HttpPost, SimApiAuth, SimApiDoc("认证", "获取已登录用户信息")]
+ public SimApiLoginItem UserInfo() => LoginInfo;
}
\ No newline at end of file
diff --git a/Controllers/SimApiCommonController.cs b/Controllers/SimApiCommonController.cs
index 9390363..24b95ab 100644
--- a/Controllers/SimApiCommonController.cs
+++ b/Controllers/SimApiCommonController.cs
@@ -31,11 +31,4 @@ public class SimApiCommonController : SimApiBaseController
{ "App", SimApiUtil.AppVersion }
};
}
-
- ///
- /// 获取已登录用户信息
- ///
- ///
- [HttpPost("/user/info"), SimApiAuth, SimApiDoc("认证", "获取已登录用户信息")]
- public SimApiLoginItem UserInfo() => LoginInfo;
}
\ No newline at end of file
diff --git a/SimApiExtensions.cs b/SimApiExtensions.cs
index e0988f7..03515b8 100644
--- a/SimApiExtensions.cs
+++ b/SimApiExtensions.cs
@@ -443,17 +443,13 @@ public static class SimApiExtensions
{
logger.LogInformation("开始配置SimApiAuth...");
builder.UseMiddleware();
- builder.MapControllerRoute(name: "Logout", pattern: "/auth/logout",
- defaults: new
- {
- controller = "SimApiAuth",
- action = "Logout"
- });
}
- if (options.EnableVersionUrl)
+
+ if (options.SimApiRouteOptions.VersionRoute != null)
{
- builder.MapControllerRoute(name: "Versions", pattern: "/versions",
+ logger.LogInformation("注册内置Route: Versions => {}", options.SimApiRouteOptions.LogoutRoute);
+ builder.MapControllerRoute(name: "Versions", pattern: options.SimApiRouteOptions.VersionRoute,
defaults: new
{
controller = "SimApiCommon",
@@ -461,6 +457,28 @@ public static class SimApiExtensions
});
}
+ if (options.SimApiRouteOptions.UserInfoRoute != null)
+ {
+ logger.LogInformation("注册内置Route: UserInfo => {}", options.SimApiRouteOptions.UserInfoRoute);
+ builder.MapControllerRoute(name: "UserInfo", pattern: options.SimApiRouteOptions.UserInfoRoute,
+ defaults: new
+ {
+ controller = "SimApiAuth",
+ action = "UserInfo"
+ });
+ }
+
+ if (options.SimApiRouteOptions.LogoutRoute != null)
+ {
+ logger.LogInformation("注册内置Route: Logout => {}", options.SimApiRouteOptions.LogoutRoute);
+ builder.MapControllerRoute(name: "Logout", pattern: options.SimApiRouteOptions.LogoutRoute,
+ defaults: new
+ {
+ controller = "SimApiAuth",
+ action = "Logout"
+ });
+ }
+
if (options.EnableSimApiDoc)
{
logger.LogInformation("开始配置SimApiDoc...");