less than 1 minute read

Redux State 에서의 Error 객체 처리

Error 객체가 Redux 의 상태에 들어갈때는 property 몇개가 제외된다

현재 프로덕을 Axios 를 이용하여 비동기 통신 중이다 Error 처리를 해야해서 try…catch 문에서 catch 의 Error 객체를 Redux 의 state 에 넣었다 하지만 state 에서는 property 중에 response 를 포함한 여러 값들이 제외되고 저장되어 서버에서 보내는 Error 객체를 파악하기 힘들었다

정확한 문제 파악을 위해 브라우저 콘솔에서 문제를 살펴보았는데 Axios 모듈에서 settle.js 을 거치며 Error 객체가 처리되는 것을 확인하였다 그래서 Axios 의 문제인가 싶어서 코드를 보았지만 서버에서 response 된 error 객체는 약간의 처리를 거치지만 온전히 error 객체에 담겨 처리되었다 그리고 console.dir(e) 를 확인해 본 결과 객체의 프로퍼티에 response 가 있었

이에 따라 문제는 redux 의 state 처리에서 여러 프로퍼티가 지워진 상태에서 처리된다는 결론을 얻었다

해결책은 Redux-Saga 의 payload 에 e.response.data 를 집어넣어서 문제없이 서버의 response 를 확인할 수 있었다