Java(129)
-
Spring boot Security와 sencha 연동시 고려사항
1. 'csrf' 정보를 같이 전송하지 않으면, 에러 발생함특별히 'csrf'와 관련해서 에러에 표시되는 부분이 없음# html 파일# 서버에서 csrf 정보를 가져옴 # js 파일# html의 csrf 정보를 참조하여 header에 설정함form.submit({ params: { '_csrf': document.getElementById('_csrf').innerText }, success: function(form, action) { }, failure: function(form, action) { }});2. 서버와 연동성공/실패 handler 추가 @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exce..
2024.08.03 -
객체를 json으로 변환해서 보내기
# data.put에 들어가는 값이 null이면, json 결과에서 제외 됨# targetUrl = null이면, response에 referer가 빠짐response.setContentType("application/json;charset=UTF-8");response.setStatus(HttpServletResponse.SC_OK);JSONObject data = new JSONObject();data.put("success", true);data.put("msg", "테스트 성공!!");data.put("referer", targetUrl);PrintWriter writer = response.getWriter();writer.print(data);writer.flush();
2024.08.03 -
Spring boot Security와 ajax 연동
환경설정에 handler 추가 @Autowired private CustomAuthenticationSuccessHandler customAuthenticationSuccessHandler; @Autowired private CustomAuthenticationFailureHandler customAuthenticationFailureHandler; @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { http.authorizeHttpRequests((requests) -> requests .requestMatchers(exceptUrl).permitAll() ...
2024.07.29 -
Spring boot Security redirect 정보 가져오기
@RequestMapping("/login") public String login(HttpServletRequest request, HttpServletResponse response) { // case1 HttpSession session = request.getSession(); log.debug(session.getAttribute("SPRING_SECURITY_SAVED_REQUEST")); // case2 RequestCache requestCache = new HttpSessionRequestCache(); SavedRequest savedRequest = requestCache.getRequest(request, response); ..
2024.07.29 -
Spring boot Security redirect after logging
원하는 redirect로 가도록 successHandler 설정@Componentpublic class CustomAuthenticationSuccessHandler extends SimpleUrlAuthenticationSuccessHandler { @Override public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException { // Custom logic after successful authenticatio..
2024.07.29 -
Class 정보 가져오기
현재 실행 중인 메소드명 가져오기Thread.currentThread().getStackTrace()[1].getMethodName()
2024.07.27