From 24af87ecd0689ef9fe3394d1426ab41235eb01e3 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 6 Mar 2026 14:43:11 +0800 Subject: [PATCH] Rename OperationRateLimit to OperationRateLimiting --- .../Controllers/RateLimitDemoController.cs | 28 +++++++++---------- .../MyCompanyName.MyProjectName.Web.csproj | 2 +- .../MyProjectNameWebModule.cs | 10 +++---- .../Pages/RateLimitDemo/Index.cshtml | 2 +- .../appsettings.json | 2 +- 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Controllers/RateLimitDemoController.cs b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Controllers/RateLimitDemoController.cs index ce2e903dcb..271b5b6af7 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Controllers/RateLimitDemoController.cs +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Controllers/RateLimitDemoController.cs @@ -3,16 +3,16 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Volo.Abp.AspNetCore.Mvc; -using Volo.Abp.OperationRateLimit; +using Volo.Abp.OperationRateLimiting; namespace MyCompanyName.MyProjectName.Web.Controllers; [Route("api/rate-limit-demo")] public class RateLimitDemoController : AbpController { - private readonly IOperationRateLimitChecker _checker; + private readonly IOperationRateLimitingChecker _checker; - public RateLimitDemoController(IOperationRateLimitChecker checker) + public RateLimitDemoController(IOperationRateLimitingChecker checker) { _checker = checker; } @@ -24,7 +24,7 @@ public class RateLimitDemoController : AbpController [AllowAnonymous] public async Task SendSmsCode([FromBody] SendSmsCodeInput input) { - await _checker.CheckAsync("Demo_SendSmsCode", new OperationRateLimitContext + await _checker.CheckAsync("Demo_SendSmsCode", new OperationRateLimitingContext { Parameter = input.PhoneNumber, ExtraProperties = @@ -43,7 +43,7 @@ public class RateLimitDemoController : AbpController [AllowAnonymous] public async Task LoginAttempt([FromBody] LoginAttemptInput input) { - await _checker.CheckAsync("Demo_LoginAttempt", new OperationRateLimitContext + await _checker.CheckAsync("Demo_LoginAttempt", new OperationRateLimitingContext { ExtraProperties = { @@ -97,7 +97,7 @@ public class RateLimitDemoController : AbpController [Authorize] public async Task CompositeParamUser([FromBody] CompositeParamUserInput input) { - await _checker.CheckAsync("Demo_Composite_ParamUser", new OperationRateLimitContext + await _checker.CheckAsync("Demo_Composite_ParamUser", new OperationRateLimitingContext { Parameter = input.Key }); @@ -112,7 +112,7 @@ public class RateLimitDemoController : AbpController [Authorize] public async Task CompositeTriple([FromBody] CompositeTripleInput input) { - await _checker.CheckAsync("Demo_Composite_Triple", new OperationRateLimitContext + await _checker.CheckAsync("Demo_Composite_Triple", new OperationRateLimitingContext { Parameter = input.Key }); @@ -127,7 +127,7 @@ public class RateLimitDemoController : AbpController [AllowAnonymous] public async Task SubmitFeedback([FromBody] SubmitFeedbackInput input) { - await _checker.CheckAsync("Demo_SubmitFeedback", new OperationRateLimitContext + await _checker.CheckAsync("Demo_SubmitFeedback", new OperationRateLimitingContext { Parameter = input.Email, ExtraProperties = @@ -147,7 +147,7 @@ public class RateLimitDemoController : AbpController [AllowAnonymous] public async Task LongHours([FromBody] LongHoursInput input) { - await _checker.CheckAsync("Demo_LongHours", new OperationRateLimitContext + await _checker.CheckAsync("Demo_LongHours", new OperationRateLimitingContext { Parameter = input.Key }); @@ -174,7 +174,7 @@ public class RateLimitDemoController : AbpController [Authorize] public async Task CustomMultiKey([FromBody] CustomMultiKeyInput input) { - await _checker.CheckAsync("Demo_CustomMultiKey", new OperationRateLimitContext + await _checker.CheckAsync("Demo_CustomMultiKey", new OperationRateLimitingContext { Parameter = input.ResourceId }); @@ -190,7 +190,7 @@ public class RateLimitDemoController : AbpController [AllowAnonymous] public async Task DemoTenantIsolated([FromBody] DemoTenantIsolatedInput input) { - await _checker.CheckAsync("Demo_TenantIsolated", new OperationRateLimitContext + await _checker.CheckAsync("Demo_TenantIsolated", new OperationRateLimitingContext { Parameter = input.Key }); @@ -205,7 +205,7 @@ public class RateLimitDemoController : AbpController [AllowAnonymous] public async Task GetStatus(string policyName, [FromQuery] string? parameter = null) { - var context = new OperationRateLimitContext { Parameter = parameter }; + var context = new OperationRateLimitingContext { Parameter = parameter }; var status = await _checker.GetStatusAsync(policyName, context); return Ok(new @@ -225,7 +225,7 @@ public class RateLimitDemoController : AbpController [AllowAnonymous] public async Task Reset(string policyName, [FromQuery] string? parameter = null) { - var context = new OperationRateLimitContext { Parameter = parameter }; + var context = new OperationRateLimitingContext { Parameter = parameter }; await _checker.ResetAsync(policyName, context); return Ok(new { success = true, message = $"Policy '{policyName}' reset" }); @@ -265,7 +265,7 @@ public class RateLimitDemoController : AbpController { try { - await _checker.ResetAsync(policyName, new OperationRateLimitContext { Parameter = parameter }); + await _checker.ResetAsync(policyName, new OperationRateLimitingContext { Parameter = parameter }); } catch { diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyCompanyName.MyProjectName.Web.csproj b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyCompanyName.MyProjectName.Web.csproj index 303ebcc66f..26b4d43325 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyCompanyName.MyProjectName.Web.csproj +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyCompanyName.MyProjectName.Web.csproj @@ -58,7 +58,7 @@ - + diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyProjectNameWebModule.cs b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyProjectNameWebModule.cs index 8b69951927..ea5ebf3e10 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyProjectNameWebModule.cs +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/MyProjectNameWebModule.cs @@ -39,7 +39,7 @@ using Volo.Abp.OpenIddict; using Volo.Abp.UI.Navigation.Urls; using Volo.Abp.UI; using Volo.Abp.UI.Navigation; -using Volo.Abp.OperationRateLimit; +using Volo.Abp.OperationRateLimiting; using Volo.Abp.VirtualFileSystem; namespace MyCompanyName.MyProjectName.Web; @@ -56,7 +56,7 @@ namespace MyCompanyName.MyProjectName.Web; typeof(AbpTenantManagementWebModule), typeof(AbpAspNetCoreSerilogModule), typeof(AbpSwashbuckleModule), - typeof(AbpOperationRateLimitModule) + typeof(AbpOperationRateLimitingModule) )] public class MyProjectNameWebModule : AbpModule { @@ -116,12 +116,12 @@ public class MyProjectNameWebModule : AbpModule context.Services.AddMapperlyObjectMapper(); - ConfigureOperationRateLimit(); + ConfigureOperationRateLimiting(); } - private void ConfigureOperationRateLimit() + private void ConfigureOperationRateLimiting() { - Configure(options => + Configure(options => { // Demo 1: Public - rate limit by parameter (e.g. phone/email), no auth required options.AddPolicy("Demo_SendSmsCode", policy => diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/RateLimitDemo/Index.cshtml b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/RateLimitDemo/Index.cshtml index 5c5aa167ce..c86eff0f4f 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/RateLimitDemo/Index.cshtml +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/Pages/RateLimitDemo/Index.cshtml @@ -267,7 +267,7 @@ Partition: PartitionByParameter
Rule: 2 requests per email within 20 seconds
Custom error code: App:Feedback:RateLimited
- Note: Default error code is Volo.Abp.OperationRateLimit:010001. This policy uses WithErrorCode() to set a custom code so the frontend can handle it differently. + Note: Default error code is Volo.Abp.OperationRateLimiting:010001. This policy uses WithErrorCode() to set a custom code so the frontend can handle it differently.
diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/appsettings.json b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/appsettings.json index 0bc9e43318..1196469f66 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/appsettings.json +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Web/appsettings.json @@ -3,7 +3,7 @@ "SelfUrl": "https://localhost:44303" }, "ConnectionStrings": { - "Default": "Server=(LocalDb)\\MSSQLLocalDB;Database=MyProjectName;Trusted_Connection=True;TrustServerCertificate=True" + "Default": "Server=localhost;Database=MyProjectName;User Id=sa;Password=1q2w3E***;TrustServerCertificate=True" }, "StringEncryption": { "DefaultPassPhrase": "gsKnGZ041HLL4IM8"