<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>2.0.14</version>
</dependency>
@Slf4j
public class AuthenticationInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String requestURI = request.getRequestURI();
log.info("拦截的请求-: " + requestURI);
String token = request.getHeader("token");
if (token == null) {
response.getWriter().write(JSON.toJSONString(GResponse.error("not login!")));
return false;
}
return HandlerInterceptor.super.preHandle(request, response, handler);
}
}
@Configuration
public class GenshinMvcConfigurer implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
List<String> addPathPatterns = new ArrayList<>();
addPathPatterns.add("/**");
List<String> excludePathPatterns = Arrays.asList("/test/**","/user/login");
registry.addInterceptor(new AuthenticationInterceptor())
.addPathPatterns(addPathPatterns)
.excludePathPatterns(excludePathPatterns);
}
}