16.自定义403处理方案
创建handle=》MyAccessDeniedHandle类
/**
* @author etern
* @title: MyAccessDeniedHandler
* @projectName springsecuritydemo
* @description: TODO 设置自定义403响应码
* @date 2022/1/22 20:24
*/
//因为之后要引用这个类
@Component
public class MyAccessDeniedHandler implements AccessDeniedHandler {
@Override
public void handle(HttpServletRequest request, HttpServletResponse response, AccessDeniedException accessDeniedException) throws IOException, ServletException {
//获取设置响应403状态码
response.setStatus(HttpServletResponse.SC_FORBIDDEN);
//设置响应请求头
response.setHeader("Content-Type", "application/json;charset=utf-8");
PrintWriter writer = response.getWriter();
writer.write("{\"status\":\"error\",\"msg\":\"权限不足,请联系管理员\"}");
//刷新
writer.flush();
//关闭
writer.close();
}
}
到配置中(SecurityConfig.java)
添加异常处理
//异常处理
http.exceptionHandling()
//添加异常403自定义处理
.accessDeniedHandler(myAccessDeniedHandler);
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 Eternal Night
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果