Javascript WebSocket使用執行個體介紹(簡明入門教程)

來源:互聯網
上載者:User

一旦你瞭解了網路通訊端與WEB伺服器的串連,你將可以從瀏覽器發送資料到伺服器並且可以接收由伺服器返回的響應資料。

以下是建立一個新的WebSocket對象的API:

複製代碼 代碼如下:var Socket = new WebSocket(url, [protocal] );

這裡第一個參數是指要串連的URL,第二個參數是可選的,如果需要的話,則是指定一個的伺服器支援的協議。

WEB Socket屬性:

屬性 說明
Socket.readyState readyState的代表的ReadOnly屬性的串連狀態。它可以有以下值:
  1. 一個0值表示該串連尚未建立。

  2. 值為1表示串連建立和溝通是可能的。

  3. 值為2表示串連是通過將結束握手。

  4. 值為3表示串連已關閉或無法開啟。

Socket.bufferedAmount 讀屬性的bufferedAmount代表文本的位元組數,utf - 8的排隊使用send()方法。

WEB Socket事件:

事件 處理常式 說明
open Socket.onopen 此事件發生在通訊端建立串連。
message Socket.onmessage 此事件發生時,用戶端收到來自伺服器的資料。
error Socket.onerror 此事件發生時有任何通訊錯誤。
close Socket.onclose 此事件發生在串連關閉。

WEB Socket方法:

方法 說明
Socket.send() send(data)方法用來串連傳輸資料。
Socket.close() close()方法將被用於終止任何現有的串連。


WEB Socket例子:

複製代碼 代碼如下:
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
function WebSocketTest()
{
  if ("WebSocket" in window)
  {
     alert("WebSocket is supported by your Browser!");
     // Let us open a web socket
     var ws = new WebSocket("ws://localhost:9998/echo");
     ws.onopen = function()
     {
        // Web Socket is connected, send data using send()
        ws.send("Message to send");
        alert("Message is sent...");
     };
     ws.onmessage = function (evt)
     {
        var received_msg = evt.data;
        alert("Message is received...");
     };
     ws.onclose = function()
     {
        // websocket is closed.
        alert("Connection is closed...");
     };
  }
  else
  {
     // The browser doesn't support WebSocket
     alert("WebSocket NOT supported by your Browser!");
  }
}
</script>
</head>
<body>
<div id="sse">
   <a href="javascript:WebSocketTest()">Run WebSocket</a>
</div>
</body>
</html>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.