You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
첫 번째는 EventSourcePolyfill을 사용해서 default 45초 동안, 또는 서버와 합의해서 설정한 heartbeat(30분) 시간 동안 아무 요청이 없으면 연결을 끊어서 에러가 발생한다.
onerror 이벤트에서 연결을 close하고 3초뒤에 다시 재연결함으로써 error를 handling 한다.
두 번째는 이번에 해결하려는 재연결을 하는 과정에서 토큰이 만료되는 문제이다.
onerror 이벤트에서 재연결을 할 때 access token이 만료되거나 없으면 refreshToken function을 사용해서 쿠키에 담겨 있는 refresh token을 기반으로 access token을 재발급한다.
하지만 refresh token이 만료된 상황이라면 refreshToken function에서 error를 throw한다.
onerror 이벤트에서는 try...catch로 error를 캐치하여 사용자를 로그아웃 시키고 로그인페이지로 redirect시키고 재로그인을 유도한다.
📸 스크린샷 (선택)
🔆 참고 사항 (선택)
The text was updated successfully, but these errors were encountered:
🐞 버그 내용
SSE 에러가 발생하는 경우는 두 가지 경우이다.
첫 번째는 EventSourcePolyfill을 사용해서 default 45초 동안, 또는 서버와 합의해서 설정한 heartbeat(30분) 시간 동안 아무 요청이 없으면 연결을 끊어서 에러가 발생한다.
onerror 이벤트에서 연결을 close하고 3초뒤에 다시 재연결함으로써 error를 handling 한다.
두 번째는 이번에 해결하려는 재연결을 하는 과정에서 토큰이 만료되는 문제이다.
onerror 이벤트에서 재연결을 할 때 access token이 만료되거나 없으면 refreshToken function을 사용해서 쿠키에 담겨 있는 refresh token을 기반으로 access token을 재발급한다.
하지만 refresh token이 만료된 상황이라면 refreshToken function에서 error를 throw한다.
onerror 이벤트에서는 try...catch로 error를 캐치하여 사용자를 로그아웃 시키고 로그인페이지로 redirect시키고 재로그인을 유도한다.
📸 스크린샷 (선택)
🔆 참고 사항 (선택)
The text was updated successfully, but these errors were encountered: