- 제품 명 : caver-js-ext-kas
- 제품 버전 : 1.9.0
- OS환경 : Mac & Linux
- 내용(문의 유형에 해당하는 항목 작성) :
caver-js-ext-kas@1.9.0로 이벤트 리스너 개발하던 중 Web Socket 연결이 끊기는 문제가 있어 문의 글 남깁니다.
이전 포럼 내 유사한 질의 글들을 참고하면서, Web Socket timeout이 되기 전에 45초에 한 번 씩 주기적으로 caver.rpc.klay.getBlockNumber()
를 호출하고 있습니다만… 아래 에러 메시지처럼 어느 순간부터 Web Socket 연결이 끊기는 문제가 있습니다ㅠㅠ
Error: connection not open on send()
at Object.ConnectionNotOpenError (/home/ubuntu/simple-blockchain-random-generator/node_modules/caver-js/packages/caver-core-helpers/src/errors.js:69:23)
at WebsocketProvider.send (/home/ubuntu/simple-blockchain-random-generator/node_modules/caver-js/packages/caver-core-requestmanager/caver-providers-ws/src/index.js:321:33)
at /home/ubuntu/simple-blockchain-random-generator/node_modules/caver-js/packages/caver-core-requestmanager/src/index.js:132:64
at RequestManager.send (/home/ubuntu/simple-blockchain-random-generator/node_modules/caver-js/packages/caver-core-requestmanager/src/index.js:125:58)
at /home/ubuntu/simple-blockchain-random-generator/node_modules/caver-js/packages/caver-core-method/src/index.js:437:34
at Klay.getBlockNumber (/home/ubuntu/simple-blockchain-random-generator/node_modules/caver-js/packages/caver-core-method/src/index.js:452:9)
at Timeout._onTimeout (file:///home/ubuntu/simple-blockchain-random-generator/app.js:150:24)
at listOnTimeout (node:internal/timers:559:17)
at processTimers (node:internal/timers:502:7)
추가적으로, 다른 포럼 글에서 Provider에 reconnect : { auto : true }
옵션을 주라는 글을 보았는데, 현재 사용하고 있는 CaverExtKAS()
에서는 해당 옵션 값을 받을 수 없는 것 같더라구요…!
const caver = new CaverExtKAS(
1001,
KASConfig.accessKeyId,
KASConfig.secretAccessKey,
{ useNodeAPIWithHttp: false }
);
어떻게 해결하면 좋을 지 도움을 구해봅니다!