• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 React 게시판 react에서 websocket의 정확한 사용

react에서 websocket의 정확한 사용

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #31060

    r1111va
    참가자

    안녕하세요 선생님

    선생님 강의 덕에 리액트 기초, 기본적인 문법이나 훅 사용을 재빨리 끝낸듯합니다. 감사합니다

    그러다가 websocket을 적용하게 되었는데요..

    구글링해서 나오는 예제들을 보면 websocket 연결 상태를 useState를 쓴 것도 있고,

    그렇게 쓰면 연결이 끊겼을 때, component lifecycle에 문제가 있을 수 있다고 useRef를 써야한다는 등

    굉장히 많은 틀린(?) 논쟁이있는 예제들이 있는 것 같습니다.

    그냥 useEffect에 의존배열에 빈배열 [] 넣고 돌리니까 돌아가긴 하는데요...

    socketIO가 아니다보니 재연결시도를 해야할 것 같은데, 서버 자체는 다른 서비스에서 가져오는거라 핑퐁 구현은 안될것같구요..

    그래서, 프론트단에서 재연결시도를 해야하는데 onClose 이벤트시에 다시 재귀적으로 재연결시도를 하게 되면 이전 웹소켓 객체가 가비지컬렉팅이 되는지도 의문입니다.

    게다가 동시에 여러 개의 websocket 객체를 이용하는 것을 구현중입니다.

    그러니까 질문이 굉장히 포괄적이라 죄송합니다만.. 최대한 한 문장으로 질문 드리자면,

    컴포넌트 라이프사이클과, 웹소켓 라이프사이클 모두를 고려하여 클라이언트에서의 재접속 시도가 이루어지는  리액트에서의 웹소켓 활용 코드 예제를 볼 수 있을까요?

    #31107

    codingapple
    키 마스터

    연결은 페이지 방문시 한번 실행하면 되니 페이지 방문시 1회 실행하라고 useEffect 안에 코드짜면 됩니다 

    재연결은 그냥 onclose 이벤트리스너 안에서 재연결하라고 코드짜놓으면 걱정할 필요는 없을듯요 

    여러번 중복연결이되는지 그런건 메세지가 여러번 수신되는지로 테스트해볼 수 있을듯요 

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠