TROUBLE SHOOTING 5

[SPRINGBOOT] Spring Security 로그인 처리

시큐리티에서 기본적으로 제공하는 폼로그인을 이용해 로그인 기능을 구현하는 과정에서 생긴 문제이다. 나는 스프링부트와 뷰를 통해 프로젝트를 구성할 계획이며, 로그인 성공시 확인할 데이터를 얻기 바라며 postman을 통해 테스트를 진행했다. postman으로 로그인를 시도하여 성공하면, 서버측 "/"로 redirect되며 404에러가 발생했다. 로그인자체는 성공한 것 같으나, response를 통해 로그인 후처리를 프론트단에서 해야했기때문에 바람직한 Response가 아니었다. 그래서 처음엔 서버에 아래와 같이 GET "/" 의 controller를 만들어 원하는 데이터를 반환하도록 했으나, 로그인 성공시 "/"에 데이터를 요청한다는 것이 꽤나 비효율적이라고 생각했다. 그래서 찾아보던 중 LoginSucc..

TROUBLE SHOOTING 2023.03.23

[AXIOS] PUT 403 에러

Vue.js도 익히고, SpringBoot도 복습할 겸 두 프레임워크를 이용해 게시판을 만들다가 403 에러를 만나 공부태도를 바로 잡기 위해 글을 쓴다. 에러내용은 다음과 같다. axios .put('http://localhost', { headers: { 'Authorization' : this.$store.state.accessToken, } }) .then((res) => { console.log(res); }) .catch((err) => { console.log(err); }); 다음과 같이 서버로 요청을 보냈는데, 계속해서 403 forbidden 에러가 발생했다. 처음엔 권한문제인줄 알고 jwt filter에서 디버깅을 했는데 아예 filter로 들어오지도 못했다. (다시 생각해보면 GET..

TROUBLE SHOOTING 2023.03.10

[ERROR] redis 사용시 같은 Key값으로 다른 프로젝트에서 저장

redis를 이용해 채팅 기능을 구현하는 중이었다. 채팅방 생성은 ARC를 통해 redis에 저장할 수 있었으나 메세지 보내는 socket 통신 확인이 어려워 새 프로젝트를 생성하고, 실습을 계속 이어갔다. 새 프로젝트폴더에서도 채팅방 생성까지는 잘 되었으나 채팅방 목록을 불러오는 과정에서 다음과 같은 에러에 부딪혔다. com.team1.dodam.domain.ChatRoom은 기존 프로젝트 폴더의 채팅방관련 파일이다. 처음에는 전혀 감을 잡지 못해 '왜 ChatRoom을 찾지 못 할까?' 하고 구글링만 했다. 그러던 중 문득 기존 프로젝트에서 채팅방 생성을 한게 떠올랐고, 새 프로젝트에서 컴파일해 실행할 때 기존 프로젝트 관련 정보를 찾지 못하는게 당연하다는 생각이 들었다. 그래서 redis내에 저장된..

TROUBLE SHOOTING 2022.09.14

[ERROR] BUILD후 jar 실행 시 생기는 에러

부트캠프를 하며 과제를 한 후 빌드 파일을 만들어 배포하는 과정에서 jar파일을 실행하는 과정에서 에러가 발생했다. 위와 같이 에러가 발생했는데 에러 이유를 찾아보다 Lookup method resolution failed Failed to introspect Class 두 가지 문구로 부터 에러 발생 이유를 찾을 수 있었다. 컴파일 후 실행하는 과정에서 Class를 불러올 수 없는게 문제였다. build.gradle의 dependency에 compileOnly 'com.auth0:java-jwt:3.19.2' 위와 같이 작성되어 있었고, implementation 'com.auth0:java-jwt:3.19.2' 다음와 같이 수정해주었더니, 에러가 해결되었다.

TROUBLE SHOOTING 2022.08.04

[ERROR] 포트포워딩 에러

AWS - EC2를 이용해 서버배포 과정 중 Git bash에서 sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 명령어를 통해 80포트로 접속시 8080포트로 ridirect되도록 포트포워딩을 했다. 하지만 8080포트로만 접근이 가능했고, 80포트로는 접근이 되지 않았다. 구글링 도중 비슷한 상황의 게시글을 확인해 보았고, 이는 이전 프로젝트를 진행하며 5000포트로 redirect되도록 포트포워딩한 기록때문에 생긴다는 것을 알게되었다. sudo iptables -t nat -L 을 통해 포트포워딩 기록을 확인했더니 위와 같이 5000포트로 redirect가 먼저 실행되는 것을 확인할 수 있었다..

TROUBLE SHOOTING 2022.07.27