SaTokenConfig.java 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. package com.nb.auth.sa;
  2. import cn.dev33.satoken.interceptor.SaRouteInterceptor;
  3. import cn.dev33.satoken.router.SaRouter;
  4. import cn.dev33.satoken.stp.StpUtil;
  5. import lombok.extern.slf4j.Slf4j;
  6. import org.springframework.context.annotation.Bean;
  7. import org.springframework.context.annotation.Configuration;
  8. import org.springframework.core.annotation.Order;
  9. import org.springframework.web.servlet.HandlerInterceptor;
  10. import java.util.ArrayList;
  11. import java.util.List;
  12. /**
  13. * Sa Token 注册拦截器
  14. *
  15. * @author Kevin
  16. */
  17. @Slf4j
  18. @Configuration
  19. public class SaTokenConfig {
  20. @Bean
  21. @Order(1)
  22. public HandlerInterceptor handlerInterceptor(){
  23. return new SaRouteInterceptor((req, res, handler) -> {
  24. SaRouter.match("/**")
  25. .notMatch(IGNORE_URL)
  26. .check(StpUtil::checkLogin);
  27. });
  28. }
  29. private static final List<String> IGNORE_URL = new ArrayList<>();
  30. static {
  31. IGNORE_URL.add("/actuator/**");
  32. IGNORE_URL.add("/bus/version/page");
  33. IGNORE_URL.add("/druid/**");
  34. IGNORE_URL.add("/favicon.ico");
  35. IGNORE_URL.add("/sys/app/get");
  36. IGNORE_URL.add("/index");
  37. IGNORE_URL.add("/login");
  38. IGNORE_URL.add("/token");
  39. IGNORE_URL.add("/logout");
  40. IGNORE_URL.add("/common/**");
  41. IGNORE_URL.add("/*.html");
  42. IGNORE_URL.add("/**/*.html");
  43. IGNORE_URL.add("/error");
  44. IGNORE_URL.add("/swagger-resources/**");
  45. IGNORE_URL.add("/swagger-ui/**");
  46. IGNORE_URL.add("/webjars/**");
  47. IGNORE_URL.add("/v2/api-docs/*");
  48. IGNORE_URL.add("/v2/api-docs");
  49. IGNORE_URL.add("/v1/**");
  50. IGNORE_URL.add("/authority/captcha/**");
  51. IGNORE_URL.add("/system/curl/**");
  52. IGNORE_URL.add("/system/sysConfig/getTime");
  53. IGNORE_URL.add("/system/sysDept/**");
  54. }
  55. }