0
如何處理意外事件,例如奇怪的數據,損壞的數據,意外的數據或事件偵聽器中出現問題的地方。處理事件偵聽器中的意外數據,例如WebSocket.onmessage
WebSocket
公開了一個onmessage
事件偵聽器。如果它收到意想不到的事情,這是如何處理的? 通過拋出異常,記錄到控制檯,默默忽略它?
- 如果事件偵聽器拋出一個異常,那麼我想沒有什麼可以捕捉到這個異常。那不好嗎?
- 使用
console.log
在生產中不好? - 如果事件偵聽器默默地忽略該消息?那不好嗎?
let socket = new WebSocket('wss://www.example.com/');
socket.onmessage = function (event) {
if (event.data === 'GARBAGE') {
// What is the appropriate thing to do here?
}
}
如果客戶端收到意外的數據,可能是因爲使用該庫的任何人使用它與一個錯誤的服務器。 – Fred
這很好。當他收到這樣的輸入時,對系統/用戶有什麼影響? –
客戶端會感到困惑,不知道如何處理數據。也許失敗,因爲某些東西是'未定義'的。無論哪種方式,客戶端庫不應該以某種方式提醒庫的用戶服務器發送的意外事件? – Fred