개발/생각

에러를 들여다보는 습관

prpn97 2023. 9. 7. 02:19

  대부분의 라이브러리는 에러처리가 잘 되어 있어서 예외의 상황에서 에러가 나면 error를 catch했을 때 console.error(error)로 에러를 확인하곤 했다. 그런데 에러메세지에 validation falied라고 확인되어서 아 뭔가 입력값에 들어간게 잘못된게 있구나 파악은 했는데 딱 거기까지만 확인을 하고 라이브러리의 공식문서에서 확인하거나 구글링을 해서 파악했다. 

 

  구글링해서 잘 안나오면 답답할 때가 종종 있는데, 문득 생각해보니 이게 왜 에러인지 못찾는 쪽으로 책임을 돌리는 나를 돌아보게 되었다. 생각해보면 내가 어떻게 입력했는지, 어떻게 입력해야 하는지 디버깅을 하긴 하지만 습관적으로 검색부터 하려는 나를 보았다. 

 

 

  위 스샷에는 error의 data 프로퍼티에 3개의 프로퍼티가 있고, errors에 배열로 되어 있는데, 메세지에 1 error라고 되어있는거보면 이 안에 여러 에러로 들어올 경우 하나씩 담기는 것으로 예상이 된다. 그렇다면 이 배열을 뜯어보는게 우선이여야 한다. 

 

거슬러 올라가면 이 data는 에러의 response 프로퍼티 안에 있는 data이다. 그렇게 error 대신 error.response를 찍어보면...

짜잔~ 에러내용이 잘 확인된다. 

messages의 to에 들어갈 값은 phone number의 형식이여야 하고 -를 제외해야 한다. 

확인해보니 내가 인코딩한 모바일넘버를 디코딩해놓고 인코딩한 변수를 넣고 있어서 규격에 맞지 않아 생기는 validation에러였다. 

 

 

잘 찾고 시야를 잘 갖는 것도 중요하지만 별것 아닌 에러일 수 있으니 잘 돌아보자. 

728x90