전체 글102 [Spring Security] 세션을 JSP로 넘기는 방법 2가지 1.첫번째방법 @GetMapping("/user/{id}/update") public String update(@PathVariable int id, @AuthenticationPrincipal PrincipalDetails principalDetails, Model model){ System.out.println("세션 정보 : " + principalDetails.getUser()); model.addAttribute("principal", principalDetails.getUser()); return "user/update"; } } 매개변수에 model 선언하고 세션으로 받아온 PrincipalDetails 를 model.addAtribute 에 담는다, 담아서 jsp 가서 EL태그 사용하기 2.. 2023. 1. 7. [Spring Security] 스프링 시큐리티의 로그인 세션의 위치, @AuthenticationPrincipal 예제 원래 세션은 Authehtication 객체에 최종적으로 저장된다. 만약 내가 username을 찾고싶다면 원래는 HttpSession 선언하고 SecurityContextHolder 안에 Authentication 객체에서 username을 찾아와야 하는데 이건 너무 복잡한 과정이다. ( 밑에 어노테이션 미사용코드 참고) 그래서 탄생한 어노테이션이 @AuthenticationPrincipal 이다. 이걸로 Authentication 객체에 바로 접근 가능한데 @GetMapping("/user/{id}/update") public String update(@PathVariable int id, @AuthenticationPrincipal PrincipalDetails principalDetails){ /.. 2023. 1. 7. 스프링 시큐리티에서의 로그인 - 시큐리티한테 위임 @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { http.csrf().disable(); http.authorizeRequests() .antMatchers("/", "/user/**", "/image/**", "/subscribe/**", "/comment/**").authenticated()// 인증필요를 걸어둔것 .anyRequest().permitAll() //나머지 허용 .and() .formLogin() .loginPage("/auth/signin") // 이건 get요청 .loginProcessingUrl("/auth/signin") //이건 post(로그인이니까) -> 스프링 .. 2023. 1. 7. Jquery를 이용한 Ajax 패턴 예제 let index = { init: function(){ $("#btn-save").on("click", ()=>{ this.save(); }); }, save: function(){ let data = { title: $("#title").val(), content: $("#content").val(), }; $.ajax({ type: "POST", url: "/api/board", data: JSON.stringify(data), //http body 데이터 contentType:"application/json; charset=utf-8", dataType:"json" }).done(function(resp){ alert("글쓰기가 완료되었습니다."); // location.href="/"; }).f.. 2023. 1. 4. jquery Ajax의 요청이 2번 일어나는 현상, form 안에 button 저장 ※ 태그 안에 태그가 존재하며, button type을 지정하지않은 상황. let index = { init: function(){ $("#btn-save").on("click", ()=>{ this.save(); }); 해당 코드가 있다고 가정합니다. 태그 안에 태그를 선언하였고 save의 onclick 이벤트를 설정하였습니다. $.ajax({ type: "POST", url: "/example", data: JSON.stringify(data), contentType:"application/json; charset=utf-8", dataType:"json" }).done(function(resp){ alert("회원가입이 완료되었습니다."); location.href="/"; }).fail(fu.. 2023. 1. 3. Jquery를 이용한 $.Ajax 함수를 읽지 못하는 문제 (bootStrap과 연관) jquery - slim 위와 같이 BootStrap 에서 긁어온 jquery 링크중 slim.min 패키지가 있는 경우 $ajax 함수를 읽지못합니다. 그 이유는 slim패키지는 min과 다르게 제거된 기능이 있습니다. jQuey.fn.extend jquery.fn.load jquery.each // 일반적인 AJAX 이벤트 처리를 위한 대다수의 함수를 첨부 jQuery.ajaxSettings.xhr, .... ajax와 관련된 세팅 설정 jQuery.parseXML - XML 구문 분석 jQuery.easing, jQuery.Animation, jQuery.speed - 애니메이션 효과 때로는 아약스가 필요하지 않는 패키지 사용하는 것을 선호하는 부류로 인해 해당 모듈들을 제외하는 "슬림"버전이 출시.. 2022. 12. 30. 이전 1 ··· 10 11 12 13 다음