溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

WebSocket使用實例分析

發(fā)布時間:2022-03-03 16:37:28 來源:億速云 閱讀:119 作者:iii 欄目:web開發(fā)

本文小編為大家詳細(xì)介紹“WebSocket使用實例分析”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“WebSocket使用實例分析”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。

    WebSocket協(xié)議本質(zhì)上是一個基于TCP的協(xié)議。

    為了建立一個WebSocket連接,客戶端瀏覽器首先要向服務(wù)器發(fā)起一個HTTP請求,這個請求和通常的HTTP請求不同,包含了一些附加頭信息,其中附加頭信息"Upgrade:WebSocket"表明這是一個申請協(xié)議升級的HTTP請求,服務(wù)器端解析這些附加的頭信息然后產(chǎn)生應(yīng)答信息返回給客戶端,客戶端和服務(wù)器端的WebSocket連接就建立起來了,雙方就可以通過這個連接通道自由的傳遞信息,并且這個連接會持續(xù)存在直到客戶端或者服務(wù)器端的某一方主動的關(guān)閉連接。

    客戶端的HTML和JavaScript

    目前大部分瀏覽器支持WebSocket()接口,你可以在以下瀏覽器中嘗試實例:Chrome,Mozilla,Opera和Safari。

    runoob_websocket.html文件內(nèi)容

<!DOCTYPE HTML>

<html>

   <head>

   <meta charset="utf-8">

   <title>菜鳥教程(runoob.com)</title>

      <script type="text/javascript">

         function WebSocketTest()

         {

            if ("WebSocket" in window)

            {

               alert("您的瀏覽器支持 WebSocket!");

               // 打開一個 web socket

               var ws = new WebSocket("ws://localhost:9998/echo");

               ws.onopen = function()

               {

                  // Web Socket 已連接上,使用 send() 方法發(fā)送數(shù)據(jù)

                  ws.send("發(fā)送數(shù)據(jù)");

                  alert("數(shù)據(jù)發(fā)送中...");

               };

               ws.onmessage = function (evt) 

               { 

                  var received_msg = evt.data;

                  alert("數(shù)據(jù)已接收...");

               };

               ws.onclose = function()

               { 

                  // 關(guān)閉 websocket

                  alert("連接已關(guān)閉..."); 

               };

            }

            else

            {

               // 瀏覽器不支持 WebSocket

               alert("您的瀏覽器不支持 WebSocket!");

            }

         }

      </script>

   </head>

   <body>

      <div id="sse">

         <a href="javascript:WebSocketTest()">運行 WebSocket</a>

      </div>

   </body>

</html>

讀到這里,這篇“WebSocket使用實例分析”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI