Bladeren bron

fix: 系统锁定http响应码改为423

zengweijie 3 jaren geleden
bovenliggende
commit
d4785f5dfa
1 gewijzigde bestanden met toevoegingen van 4 en 3 verwijderingen
  1. 4 3
      src/main/java/com/inspur/smsb/gateway/filter/LicenseFilter.java

+ 4 - 3
src/main/java/com/inspur/smsb/gateway/filter/LicenseFilter.java

@@ -50,13 +50,13 @@ public class LicenseFilter implements GlobalFilter, Ordered, InitializingBean, D
     public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {
         if (sysLocked.get() || timeRollBack.get()) {
             ServerHttpResponse response = exchange.getResponse();
-            response.setStatusCode(HttpStatus.UNAUTHORIZED);
+            response.setStatusCode(HttpStatus.LOCKED);
             response.getHeaders().setContentType(MediaType.APPLICATION_JSON);
             String msg = sysLocked.get() ? "系统已锁定" : "发现时间回退,系统已锁定";
             return response.writeWith(Mono.fromSupplier(() -> {
                 DataBufferFactory bufferFactory = response.bufferFactory();
                 try {
-                    return bufferFactory.wrap(objectMapper.writeValueAsBytes(Response.buildFailure("401", msg)));
+                    return bufferFactory.wrap(objectMapper.writeValueAsBytes(Response.buildFailure(String.valueOf(HttpStatus.LOCKED.value()), msg)));
                 } catch (JsonProcessingException e) {
                     log.error("Error writing response", e);
                     return bufferFactory.wrap(new byte[0]);
@@ -135,8 +135,9 @@ public class LicenseFilter implements GlobalFilter, Ordered, InitializingBean, D
             while (checkSysLocked()) {
                 try {
                     Thread.sleep(Duration.ofMinutes(STEP).toMillis());
-                } catch (InterruptedException e) {
+                } catch (InterruptedException e) {// NOSONAR
                     log.error(e.getMessage(), e);
+                    break;
                 }
             }
             threadPoolTaskExecutor.shutdown();