提交 b2ab3f4f 编写于 作者: zlt2000's avatar zlt2000

fix sentinel

上级 f32501f4
......@@ -2,11 +2,10 @@ package com.central.sentinel.config;
import cn.hutool.json.JSONUtil;
import com.alibaba.csp.sentinel.adapter.spring.webflux.callback.BlockRequestHandler;
import com.alibaba.csp.sentinel.adapter.spring.webflux.callback.WebFluxCallbackManager;
import com.alibaba.csp.sentinel.adapter.spring.webmvc.callback.BlockExceptionHandler;
import com.alibaba.csp.sentinel.adapter.spring.webmvc.config.SentinelWebMvcConfig;
import com.central.common.model.Result;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
......@@ -28,14 +27,11 @@ public class SentinelAutoConfigure {
/**
* 限流、熔断统一处理类
*/
/*@Configuration
@ConditionalOnClass(HttpServletRequest.class)*/
@Configuration
@ConditionalOnClass(HttpServletRequest.class)
public static class WebmvcHandler {
public WebmvcHandler(SentinelWebMvcConfig config) {
config.setBlockExceptionHandler(webmvcBlockExceptionHandler());
}
public BlockExceptionHandler webmvcBlockExceptionHandler() {
@Bean
public BlockExceptionHandler blockExceptionHandler() {
return (request, response, e) -> {
response.setStatus(429);
Result result = Result.failed(e.getMessage());
......@@ -48,14 +44,11 @@ public class SentinelAutoConfigure {
/**
* 限流、熔断统一处理类
*/
/*@Configuration
@ConditionalOnClass(ServerResponse.class)*/
@Configuration
@ConditionalOnClass(ServerResponse.class)
public static class WebfluxHandler {
public WebfluxHandler() {
WebFluxCallbackManager.setBlockHandler(webfluxBlockExceptionHandler());
}
public BlockRequestHandler webfluxBlockExceptionHandler() {
@Bean
public BlockRequestHandler blockRequestHandler() {
return (exchange, t) ->
ServerResponse.status(HttpStatus.TOO_MANY_REQUESTS)
.contentType(MediaType.APPLICATION_JSON)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册