當websockt鏈接是open的時候send()方法傳送數據,當鏈接關閉或獲取不到的時候回拋出異常。web
一個一般的錯誤是人們喜歡在鏈接open以前發送消息。以下所示:websocket
// 這將不會工做 var ws = new WebSocket("ws://echo.websocket.org") ws.send("Initial data");
正確的姿式以下,應該等待open事件觸發後再發送消息。socket
var ws = new WebSocket("ws://echo.websocket.org") ws.onopen = function(e) { ws.send("Initial data"); }
若是想經過響應別的事件去發送消息,能夠檢查readyState屬性的值爲open的時候來實現。spa
function myEventHandler(data) { if (ws.readyState === WebSocket.OPEN) { ws.send(data); } else { } }