# 自定义 URL 限流返回值(1.7.0)
首先url必须是顶级,即形如/sentinel,/echo,如果为/echo/test,在sentinel-bashboard中不显示
第一步: 手动添加如下依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
<version>2.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>com.alibaba.csp</groupId>
<artifactId>sentinel-web-servlet</artifactId>
<version>1.7.0</version>
</dependency>
目前不支持 1.7.1
sentinel-web-servlet没有包含在spring-cloud-starter-alibaba-sentinel中
第二步: 实现 UrlBlockHandler 接口
public class CustomUrlBlockHandler implements UrlBlockHandler {
@Override
public void blocked(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, BlockException e) throws IOException {
httpServletResponse.getWriter().write("url blocked");
}
}
第三步: 将自定义的CustomerUrlBlockHandler加入到应用中
@Configuration
public class SentinelConfig{
@PostConstruct
public void config(){
WebCallbakManager.setUrlBlockHandler(new CustomUrlBlockHander());
}
}
此时在sentinel-dashboard中添加如下规则

访问http://localhost:9089/url可以得到自定义限流的结果
> curl http://localhost:9980/url
url blocked
注意版本
spring-cloud-starter-alibaba-sentinel 为 2.1.1.release
sentinel-web-servlet 为 1.7.0
升级版本后经测试不生效
# 1.7.1
实现BlockExceptionHandler接口