springboot 拦截器处理过滤token,并且返回结果
public class ParamInterceptor implements HandlerInterceptor {
private Logger LOG = Logger.getLogger(ParamInterceptor.class);
@Override
public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
String token = httpServletRequest.getHeader("token");
//LOG.info(token)
if(!"aOXnjYZyn==".equals(token)){
PrintWriter writer = null;
httpServletResponse.setCharacterEncoding("UTF-8");
httpServletResponse.setContentType("text/html; charset=utf-8");
try {
writer = httpServletResponse.getWriter();
String error = "token信息有误";
writer.print(error);
return false;
} catch (IOException e) {
LOG.error("response error",e);
} finally {
if (writer != null)
writer.close();
}
}
return true;
}
@Override
public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
}
@Override
public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
}
}
添加拦截器配置
/***
* @Desciption: 拦截器
* @Date: 13:53 2018/1/15
* @return
*/
@Configuration
public class InterceptorConfig extends WebMvcConfigurerAdapter {
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new ParamInterceptor()).addPathPatterns("/**");
}
}