MyAuthenticationEntryPoint.java 1.3 KB

12345678910111213141516171819202122232425262728293031
  1. package edu.travel.config;
  2. import com.fasterxml.jackson.databind.ObjectMapper;
  3. import org.springframework.security.core.AuthenticationException;
  4. import org.springframework.security.web.AuthenticationEntryPoint;
  5. import javax.servlet.ServletException;
  6. import javax.servlet.http.HttpServletRequest;
  7. import javax.servlet.http.HttpServletResponse;
  8. import java.io.IOException;
  9. import java.util.HashMap;
  10. import java.util.Map;
  11. public class MyAuthenticationEntryPoint implements AuthenticationEntryPoint {
  12. @Override
  13. public void commence(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, AuthenticationException e) throws IOException, ServletException {
  14. Map map = new HashMap();
  15. map.put("code", "451");
  16. map.put("message", "无权限访问");
  17. map.put("path", httpServletRequest.getServletPath());
  18. map.put("timestamp", String.valueOf(System.currentTimeMillis()));
  19. httpServletResponse.setContentType("application/json");
  20. httpServletResponse.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
  21. try {
  22. ObjectMapper mapper = new ObjectMapper();
  23. mapper.writeValue(httpServletResponse.getOutputStream(), map);
  24. } catch (Exception ex) {
  25. throw new ServletException();
  26. }
  27. }
  28. }