Joonas' Note

Joonas' Note

socket.io 연결 실패 해결하기 본문

개발

socket.io 연결 실패 해결하기

2018. 7. 23. 02:52 joonas

    node.js + socket.io로 간단하게 실시간 이벤트 서버를 만들려고 했다.

    약 3~4년 전에 비슷한 개발을 해봤기에 무리없이 될거라고 생각했으나, 하루종일 삽질했다. 서버단과 클라이언트단의 코드 모두 공식 도큐먼트로 작성하였으니 틀릴리가 없었다. 첨부하자면 아래와 같다.

    페이지가 로드되면 서버에 연결을 시도하고, 연결되면 test 후 종료하는 테스트 코드이다. 근데 서버쪽에서는 엄청나게 많은 연결이 시도되고 있었다. (서버쪽 화면이 connected!로 도배되고 있었다.)
    하지만 이게 웬, 정작 클라이언트쪽 socket 변수의 connected 속성은 false였다.

    참고로 express는 v4.16.3, socket.io는 v2.1.1, node.js는 v10.6.0 이었다.

    결론은, 아래 한 줄로 해결되었다.

    transport 속성을 생략하면 기본적으로 'polling'이 설정되는 것일까? 서버단의 로그가 도배된 이유가 납득이 된다.

    참고한 글

    [GIthub] socketio/socket.io-client - XHR Polling Error appears when debugger is present #1097

    Comments