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은 정상적으로 작동하는데 PUT만 되지 않았으니 권한문제는 아닌데
왜 그마저도 생각하지 못했을까 싶다....)
그 외에 url 주소, accessToken 등을 살펴봐도 문제가 될만한 것들을 찾지 못하고
구글링만 하다가 내가 메서드를 잘못 사용하고 있지 않을까라는 생각을 했다.
그래서 PUT 메서드에 필요한 인자값들을 살펴봤는데 url, data, config 세 가지 인자를 받는다는 것을 알 수 있었다.
url : 요청을 보낼 주소
data : 수정할 값
config : header 등 요청에 대한 설정 값
그렇다...
나는 세 가지 인자를 필요로 하는 메서드에 두 가지 인자만 넣어서 호출했다.
에러는 다음과 같이 수정하여 해결할 수 있었다.
axios
.put('http://localhost','',
{
headers: {
'Authorization' : this.$store.state.accessToken,
}
})
.then((res) => {
console.log(res);
})
.catch((err) => {
console.log(err);
})
POST와 똑같은 방식인데 POST를 구현했으면서도 이런 실수를 한 자신에게 화가 났고,
메서드를 이용하면서 아주 기초적인 사용법도 모르고 그냥 무작정 코드만 때려넣고 있었던 자신에게 화가 났다.
새로운 공부를 할 땐 항상 기초적인 것이라도 학습을 하고,
생각이라는 것을 하면서 개발을 해야겠다.. 화이팅..
'TROUBLE SHOOTING' 카테고리의 다른 글
[SPRINGBOOT] Spring Security 로그인 처리 (0) | 2023.03.23 |
---|---|
[ERROR] redis 사용시 같은 Key값으로 다른 프로젝트에서 저장 (0) | 2022.09.14 |
[ERROR] BUILD후 jar 실행 시 생기는 에러 (0) | 2022.08.04 |
[ERROR] 포트포워딩 에러 (0) | 2022.07.27 |