1 回答

TA貢獻1836條經驗 獲得超5個贊
想到了幾種可能性:
添加WebSocket.onerror錯誤處理程序
myWebSocket.onerror = myEventHandler;
將您的“連接”包裹在try/catch 塊中
try {
const connection = new WebSocket(myUrl);
...
}
catch(error) {
console.error(error);
}
構建您的代碼,使您的 I/O 是事件驅動的:
https://developer.mozilla.org/en-US/docs/Web/API/WebSocket#Examples
// Create WebSocket connection.
const socket = new WebSocket('ws://localhost:8080');
// Connection opened
socket.addEventListener('open', function (event) {
socket.send('Hello Server!');
});
// Listen for messages
socket.addEventListener('message', function (event) {
console.log('Message from server ', event.data);
});
// Handle errors
socket.addEventListener('error', function (event) {
console.log('WebSocket error observed:', event);
});
附錄:
上述方法可以讓您完全處理 websockets 異常。
不管異常是否被處理,Chrome 調試器都會告訴你是否發生了異常。這是一件好事。它被稱為“第一次機會例外”:
https://docs.microsoft.com/en-us/security-risk-detection/concepts/first-chance-exception
.. 它被稱為“第一次機會”異?!趹贸绦蛱幚懋惓#ɑ虿惶幚恚┲埃{試器有第一次機會檢查異常。
在 Microsoft 的 Visual Studio 調試器中,有一個小復選框可用于“堵住”第一次機會異常。我不知道 Chrome 調試器中有任何類似的“復選框”。
可能的建議:
添加回答
舉報