deason 1 yıl önce
ebeveyn
işleme
2f176c6aba

+ 7 - 3
src/main/java/com/qmth/exam/reserve/controller/student/StudentApplyController.java

@@ -44,7 +44,7 @@ public class StudentApplyController extends BaseController {
     public void save(@ApiParam("考点ID") @RequestParam Long examSiteId,
                      @ApiParam("预约时段ID") @RequestParam Long timePeriodId) {
         RateLimitRule limitRule = RateLimitRule.parse(Constants.API_LIMIT_EXPRESSION);
-        if (!rateLimitService.getRateLimiter("apply", null, limitRule).acquire()) {
+        if (!rateLimitService.getRateLimiter("apply_save", null, limitRule).acquire()) {
             throw DefaultExceptionEnum.RATE_LIMITED.exception(Constants.SYSTEM_BUSY);
         }
 
@@ -56,7 +56,7 @@ public class StudentApplyController extends BaseController {
     public void cancel(@ApiParam("考点ID") @RequestParam Long examSiteId,
                        @ApiParam("预约时段ID") @RequestParam Long timePeriodId) {
         RateLimitRule limitRule = RateLimitRule.parse(Constants.API_LIMIT_EXPRESSION);
-        if (!rateLimitService.getRateLimiter("cancelApply", null, limitRule).acquire()) {
+        if (!rateLimitService.getRateLimiter("apply_cancel", null, limitRule).acquire()) {
             throw DefaultExceptionEnum.RATE_LIMITED.exception(Constants.SYSTEM_BUSY);
         }
 
@@ -72,6 +72,11 @@ public class StudentApplyController extends BaseController {
     @ApiOperation(value = "获取考生当前进行中的预约列表(首页)")
     @PostMapping(value = "/apply/list/for/current")
     public List<ApplyVO> listForCurrent() {
+        RateLimitRule limitRule = RateLimitRule.parse(Constants.API_LIMIT_EXPRESSION);
+        if (!rateLimitService.getRateLimiter("apply_list", null, limitRule).acquire()) {
+            throw DefaultExceptionEnum.RATE_LIMITED.exception(Constants.SYSTEM_BUSY);
+        }
+
         return examReserveService.getStudentApplyListForCurrent(curLoginStudent());
     }
 
@@ -108,4 +113,3 @@ public class StudentApplyController extends BaseController {
     }
 
 }
-

+ 6 - 1
src/main/java/com/qmth/exam/reserve/controller/student/StudentLoginController.java

@@ -39,7 +39,7 @@ public class StudentLoginController extends BaseController {
     @PostMapping(value = "/login")
     public LoginUser login(@RequestBody LoginReq req) {
         RateLimitRule limitRule = RateLimitRule.parse(Constants.API_LIMIT_EXPRESSION);
-        if (!rateLimitService.getRateLimiter("login", null, limitRule).acquire()) {
+        if (!rateLimitService.getRateLimiter("student_login", null, limitRule).acquire()) {
             throw DefaultExceptionEnum.RATE_LIMITED.exception(Constants.SYSTEM_BUSY);
         }
 
@@ -49,6 +49,11 @@ public class StudentLoginController extends BaseController {
     @ApiOperation(value = "考生登录(微信号)")
     @PostMapping(value = "/login/for/wechat")
     public LoginUser loginForWechat(@RequestBody WechatLoginReq req) {
+        RateLimitRule limitRule = RateLimitRule.parse(Constants.API_LIMIT_EXPRESSION);
+        if (!rateLimitService.getRateLimiter("wechat_login", null, limitRule).acquire()) {
+            throw DefaultExceptionEnum.RATE_LIMITED.exception(Constants.SYSTEM_BUSY);
+        }
+
         return authService.wechatLogin(req);
     }