axios 라이브러리 'withCredentials' 오류 대처 방법

김정현

Axios는 JavaScript에서 HTTP 요청을 쉽게 만들고 처리할 수 있는 라이브러리입니다. Axios를 사용하면 서버로 HTTP 요청을 보내고 응답을 처리하는 작업을 간단하게 수행할 수 있어 많은 개발자들이 사용하고 있습니다.

그런데, 새로운 프로젝트를 시작하면서 백앤드 서버로 POST 요청을 보낼 때 403 Forbidden 오류가 계속 발생했습니다.

개발 작업에게 가장 난해하고 신경쓰이는 것이 서로 다른 도메인 주소를 사용하는 백앤드(Django), 프론트앤드(VueJS)의 보안 설정 문제입니다.

403 오류는 요청을 허용할 수 없다는 것이기에 CORS, CSRF 설정을 다시 점검했습니다. 하지만 문제를 발견할 수 없어 이틀에 걸쳐 이것 저것 수정해 보았으나 도무지 어떤 부분의 문제인지 알아낼 수 없었습니다.

구글링을 통해 힌트를 얻은 것은  axios 라이브러리에서 CSRF 토큰을 전송하기 위해 사용하는 ‘withCredentials’ 가 ‘withXSRFToken’ 으로 대체된다는 것이었습니다.

좀 더 자세히 살펴보니, 이번 프로젝트에서 install한 axios 라이브러리 버전(1.6.2)부터 ‘withXSRFToken’을 사용하라는 글을 보게 되었습니다.

https://github.com/axios/axios/releases/tag/v1.6.2

axios 해더에 withXSRFTokentrue 로 설정하고 실행했더니 403 오류가 사라졌습니다.

혹시 비슷한 문제가 발생하였다면 이 부분을 체크해 보시기 바랍니다.

1개의 댓글
로그인
로그인 이후 댓글 쓰기가 가능합니다.
avatar
matiasyoon -  5개월, 2주

기업 홍보를 위한 확실한 방법
협회 홈페이지에 회사정보를 보강해 보세요.