429 error

뉴스 api를 가져와 무한 스크롤을 구현하던 길에 429를 만나버렸다. 와우..

🧨 429 error란?

429 Too Many Requests

미친듯이 요청을 보냈다는 것이다..
나는 참고로 무한스크롤링 구현에서 문제가 생겨 (페이지의 개념으론 두 번째 페이지)로 넘기는 부분에서 마지막 페이지까지 데이터가 순식간에 불려져 와버렸기 때문에 요청 과부하가 걸린 것이었다. 이런 경우 429 에러를 힘차게 보내준다.
문제 해결을 위해 검색 해보니 크롬 쿠키를 지우라는 이야기도 있었는데 소용 없었다. 그리고 관련 글들 중 api 제공사에 대한 사용자의 질문 답변도 많이 보게 되었는데 429를 내보내는 기준은 api마다 상이한 것 같다.

📌 그래서 429 해결은 어떻게?

그냥 기다리면 된다.
newsapi 사이트의 경우에는 대표 에러에 대해 기재해 놨는데 (https://newsapi.org/docs/errors)
잠시 기다리고 있음 된다고 원인과 해결 방안이 사이트에 친절하게 나와있다.
잠시라 해서 10분 넘게 기다렸는데도 안 돼서 약 1시간 정도 뒤에 다시 시도하니 됐다.
참고로 발급받은 api 한정 429 error다. 다른 api를 사용했을 때 언제 그랬냐는듯 컨텐츠를 불러와서 작동 했는데 그 api마저 429에 먹통이 되게할 수 없어 최대한 해결책을 찾기로 한 것이었다.

💡 error대면 후 개선된 사항

throttle을 사용해서 스크롤 되어 데이터를 불러오는 시간의 간격을 주어 성능향상을 시켜 주었다.
throttle은 progress bar를 만드는 방법에 대해 공부할 때 구현해 보았던 것이었는데 이렇게 사용할 날이 왔다. :D

좋은 웹페이지 즐겨찾기