본문 바로가기
728x90

전체 글389

Spring Security ) SNS 로그인(OAuth2) + JWT + redirect 를 전부 구현하기 +) 2024.02.25 yomankum 프로젝트 기준으로 수정! 정말 정말 정말 x 1000 고생하고 오래 걸린 SNS 로그인 !!! 그냥 정석으로 하는 SNS 로그인 자체는 어렵지 않은데 + JWT 로그인 + 리다이렉트 하는 게 조금 힘들었다...ㅎㅎ 뭐 코드 자체는 어렵지 않은데 예시가 많이 없어서 / 이해가 힘들어서 그랬나 ? 알겠는데. 그래서 어쩌라고 ? 하는 것들이 많았당. 내가 어떻게 구현했는지 적어둬야지~ 그냥 로그인은 서버에서 검증을 다 처리했다면 OAuth2 로그인이란 서버 - 클라이언트 - 서버가 서로 소통하면서 일처리를 하는 건데 서비스클라이언트A : 나 로그인 할래! 서버B : 클라이언트야, A가 로그인한다는데? 클라이언트 : 너 서버B 구나? (A 확인 후) 응응 얘 우리가 정보.. 2023. 5. 6.
Pageable 로 게시판 페이징을 해야 하는데 특정 컬럼이 존재한다면 안 보여주고 싶다 게시판에서 리스트를 보여주는 것 까진 완성했다 내 게시판에서는 게시글을 삭제했을 때, delete 쿼리를 실행하는 것이 아닌 삭제 관련한 데이터를 추가시키고 게시판에 업데이트로 추가함으로서 삭제 관련 컬럼이 null 이 아닐 경우, 삭제 된 게시글임을 알 수 있다 그래서 단순히 findAll 해온다면 리스트에는 삭제 된 게시글이 보일 수밖에 없다 여기서 의문이 생겼는데 나는 삭제 컬럼이 null 일 경우에만 데이터를 보여줘야 한다 근데 null 체크 작업을 1. 서버에서 할 것인가 2. DB 에서 쿼리로 할 것인가 어떤 방법이 성능이 더 좋은지 의문이 들었다 이왕이면 성능이 좋게 작업하는 것이 좋잖아? 여기저기 물어봤는데 의견이 갈렸는데 스터디에서 어떤 분이 보내주신 컬럼이 도움되었다 https://ww.. 2023. 5. 5.
ajax 요청에서 자동 새로고침이 되는 문제 ajax 요청을 하는데 새로고침 관련 코드가 없는데도 자동 새로고침이 되는 문제가 발생했다 이걸로 한 3~4일을 잡아먹었는데... 정답은 간단하게도 으로 감싸진 은 기본 동작이 submit 이기 때문에 button type="button"을 반드시 명시해줘야한다는 것 ! 글쓰기 이렇게 버튼 타입을 명시해줬더니 새로고침 없이 잘 동작하는 것을 확인했다 ^0^/ +) 스터디 멤버님의 조언 추가 !!! 힘든 시간... 2023. 4. 26.
의문 1. 빈 순환 참조 예외 때문에 PasswordEncoder 빈 등록을 AppConfig로 옮겨서 UserDetailsService 와 떨어뜨려놓았다 - 근데 둘은 원래 같이 다니는 세트 메뉴인데 (하나를 명시하는 순간, 다른 하나도 반드시 명시해서 빈 등록해야만 함) - 그리고 원래 둘 다 시큐리티 소속인데 PasswordEncoder 를 굳이 AppConfig 로 옮겨야 할까? 다른 해결 법은 없을까? 2. DB 에서 삭제 여부 컬럼이 NULL 이 아닐 경우만 프론트에서 리스트로 보여주려고 하는데 1. findAll 한 후 서버에서 NULL 여부 검증 2. DB에서 조건문을 준 후 가져오는 법 뭐가 더 성능상 유리할까? - 좀 물어봤는데 말이 다 다름.... -- 계속 추가 예정 2023. 4. 7.
Method springSecurityFilterChain in org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration required a bean of type 'org.springframework.security.oauth2.client.registration.ClientRegistrationRepository' that could not b.. 해당 오류가 발생하며 서버가 빌드되지 않았다 ㅠ 해결은 application.yml 에서 oauth2 설정을 하는데 spring.security.oauth2.... 해야되는데 spring.oauth2... 라고 써서 안 됐던 거다 ㅠㅠ 이렇게 고쳐주었더니 잘 빌드되는 서버 2023. 3. 27.
Spring Security ) JWT 토큰 로그인 구현을 해보았다 +) 2023.08.18 기준으로 지금 게시글에서 5개월 후에 구현한 JWT 는 아래 링크에서 확인 가능하다. 좀 더 퀄리티있게(?) 바꼈다. 참고~ https://hyuil.tistory.com/246 JWT ) 프론트 서버와 통신하는데에 사용할 JWT 인증을 구현해보자 태초에 첫 토큰 로그인 구현이 있었다. https://hyuil.tistory.com/188 Spring Security ) JWT 토큰 로그인 구현을 해보았다 이것은 드디어 토큰 로그인을 완성한 나를 위한 박수 박수.... 그리고 정리와 저장용. hyuil.tistory.com 이것은 드디어 토큰 로그인을 완성한 나를 위한 박수 박수.... 그리고 정리와 저장용... 일단 난 1. Access 토큰은 프론트(로컬스토리지)에 저장 2... 2023. 3. 25.
728x90