婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 五分鐘學會HTML5的WebSocket協(xié)議

五分鐘學會HTML5的WebSocket協(xié)議

熱門標簽:智能電銷機器人被禁用了么 高德地圖標注商戶怎么標 如何查看地圖標注 電話機器人技術(shù) 惡搞電話機器人 黃石ai電銷機器人呼叫中心 地圖標注軟件打印出來 欣鼎電銷機器人 效果 ok電銷機器人

1、背景

很多網(wǎng)站為了實現(xiàn)推送技術(shù),所用的技術(shù)都是Ajax輪詢。輪詢是在特定的的時間間隔由瀏覽器對服務(wù)器發(fā)出HTTP請求,然后由服務(wù)器返回最新的數(shù)據(jù)給客戶端的瀏覽器。這種傳統(tǒng)的模式帶來很明顯的缺點,即瀏覽器需要不斷的向服務(wù)器發(fā)出請求,然而HTTP請求可能包含較長的頭部,其中真正有效的數(shù)據(jù)可能只是很小的一部分,顯然這樣會浪費很多的帶寬等資源。HTML5新增的一些新協(xié)議WebSocket,可以提供在單個TCP連接上提供全雙工,雙向通信,能夠節(jié)省服務(wù)器資源和帶寬,并且能夠?qū)崟r進行通信。

2、WebSocket介紹

傳統(tǒng)的http也是一種協(xié)議,WebSocket是一種協(xié)議,使用http服務(wù)器無法實現(xiàn)WebSocket,

2.1.瀏覽器支持情況

基本主流瀏覽器都支持

2.2.優(yōu)點

相對于http有如下好處:

1.客戶端與服務(wù)器只建立一個TCP連接,可以使用更少的連接。

2.WebSocket服務(wù)器端可以主動推送數(shù)據(jù)到客戶端,更靈活高效。

3.更輕量級的協(xié)議頭,減少數(shù)據(jù)傳送量。

對比輪訓機制

3、WebSocket用法

我們了解WebSocket是什么,有哪些優(yōu)點后,怎么使用呢?

3.1.WebSocket創(chuàng)建

WebSocket使用了自定義協(xié)議,url模式與http略有不同,未加密的連接是ws://,加密的連接是wss://,WebSocket實例使用new WebSocket()方法來創(chuàng)建,

var ws = new WebSocket(url, [protocol] );

第一個參數(shù) url, 指定連接的 URL。第二個參數(shù) protocol 是可選的,指定了可接受的子協(xié)議。

3.2.WebSocket屬性

當創(chuàng)建ws對象后,readyState為ws實例狀態(tài),共4種狀態(tài)

0 表示連接尚未建立。

1 表示連接已建立,可以進行通信。

2 表示連接正在進行關(guān)閉。

3 表示連接已經(jīng)關(guān)閉或者連接不能打開。

Tips:在發(fā)送報文之前要判斷狀態(tài),斷開也應(yīng)該有重連機制。

3.3.WebSocket事件

在創(chuàng)建ws實例對象后,會擁有以下幾個事件,根據(jù)不同狀態(tài)可在事件回調(diào)寫方法。

  • ws.onopen 連接建立時觸發(fā)
  • ws.onmessage 客戶端接收服務(wù)端數(shù)據(jù)時觸發(fā)
  • ws.onerror 通信發(fā)生錯誤時觸發(fā)
  • ws.onclose 連接關(guān)閉時觸發(fā)
ws.onmessage = (res) => {
  console.log(res.data);
};

ws.onopen = () => {
  console.log('OPEN...');
};

ws.onclose=()=>{
 console.log('CLOSE...');
}

3.4.WebSocket方法

  • ws.send() 使用連接發(fā)送數(shù)據(jù)(只能發(fā)送純文本數(shù)據(jù))
  • ws.close() 關(guān)閉連接

4、Demo演示

了解WebSocket的一些API之后,趁熱打鐵,做一個小案例跑一下。

4.1.Node服務(wù)器端

WebSocket協(xié)議與Node一起用非常好,原因有以下兩點:

1.WebSocket客戶端基于事件編程與Node中自定義事件差不多。

2.WebSocket實現(xiàn)客戶端與服務(wù)器端長連接,Node基本事件驅(qū)動的方式十分適合高并發(fā)連接

創(chuàng)建一個webSocket.js如下:

const WebSocketServer = require('ws').Server;
const wss = new WebSocketServer({ port: 8080 });
wss.on('connection', function (ws) {
    console.log('client connected');
    ws.on('message', function (message) {
        ws.send('我收到了' + message);
    });
});

打開windows命令窗口運行

4.2.HTML客戶端

新建一個index.html頁面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>webSocket小Demo</title>
</head>
<body>
    <div class="container">
        <div>
            <input type="text" id="msg">
            <button onclick="sendMsg()">發(fā)送報文</button>
        </div>
    </div>
    <script>
        const ws = new WebSocket('ws://localhost:8080');
        ws.onmessage = (res) => {
            console.log(res);
        };
        ws.onopen = () => {
            console.log('OPEN...');
        };
        ws.onclose = () => {
            console.log('CLOSE...');
        }
        function sendMsg() {
            let msg = document.getElementById('msg').value;
            ws.send(msg);
        }
    </script>
</body>

打開瀏覽器依次輸入字符1,2,3,每次輸入完點擊發(fā)送報體,可見在ws.onmessage事件中res.data中返回來我們發(fā)的報文

5、問題與總結(jié)

以上只是簡單的介紹了下WebSocket的API與簡單用法,在處理高并發(fā),長連接這些需求上,例如聊天室,可能WebSocket的http請求更加合適高效。

但在使用WebSocket過程中發(fā)現(xiàn)容易斷開連接等問題,所以在每次發(fā)送報文前要判斷是否斷開,當多次發(fā)送報文時,由于服務(wù)器端返回數(shù)據(jù)量不同,返回客戶端前后順序也不同,所以需要在客戶端收到上一個報文返回數(shù)據(jù)后再發(fā)送下一個報文,為了避免回調(diào)嵌套過多,通過Promise ,async ,await等同步方式解決。關(guān)于WebSocket就寫這么多,如有不足,歡迎多多指正!

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:阿壩 萍鄉(xiāng) 綏化 盤錦 赤峰 中山 聊城 金昌

巨人網(wǎng)絡(luò)通訊聲明:本文標題《五分鐘學會HTML5的WebSocket協(xié)議》,本文關(guān)鍵詞  五分鐘,學會,HTML5,的,WebSocket,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《五分鐘學會HTML5的WebSocket協(xié)議》相關(guān)的同類信息!
  • 本頁收集關(guān)于五分鐘學會HTML5的WebSocket協(xié)議的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品系列在线| 欧美v国产在线一区二区三区| 性久久久久久久久久久久| 国产精品三级av在线播放| 国产精品视频免费| 国产亚洲一区二区三区在线观看| 久久综合狠狠综合久久综合88| 色综合久久久久综合| 欧美无乱码久久久免费午夜一区| 欧美性感一类影片在线播放| 欧美色爱综合网| 欧美性欧美巨大黑白大战| 欧美三级电影一区| 欧美日韩一区二区三区在线看| 日韩美女在线视频| 久久九九久久九九| 欧美一区二区视频观看视频| 国产午夜亚洲精品理论片色戒 | 亚洲第一av色| 国产精品第13页| 男人的j进女人的j一区| 成人黄色免费短视频| 制服.丝袜.亚洲.另类.中文| 免费看日韩a级影片| 欧美日韩第一区日日骚| 亚洲色欲色欲www| 日韩小视频在线观看专区| 日韩三级中文字幕| 欧美一区国产二区| 日韩精品一区在线观看| 欧美经典三级视频一区二区三区| 欧美性一区二区| 国产.欧美.日韩| 蜜臀av一级做a爰片久久| 美女视频黄 久久| 激情五月婷婷综合| 麻豆精品在线播放| 国产精品1区2区| 欧美绝品在线观看成人午夜影视| 5566中文字幕一区二区电影| 中文av一区二区| 国产在线看一区| 国产一区二区三区观看| 在线看一区二区| 欧美精品高清视频| 国产精品一区二区无线| 欧美sm美女调教| 国产精品日韩成人| 99re亚洲国产精品| 色中色一区二区| 欧美一区二区三区免费| 国产成人精品三级| 欧美主播一区二区三区美女| 欧美美女一区二区| 欧美午夜电影网| 亚洲精品国产精华液| 一区二区三区美女视频| 成人免费看黄yyy456| 欧美日韩在线免费视频| 亚洲成人激情av| 欧洲一区在线电影| 日韩视频一区在线观看| 丝袜亚洲精品中文字幕一区| 不卡的电影网站| 成人18精品视频| 国产亚洲欧美色| 日韩一二三区视频| 国产清纯美女被跳蛋高潮一区二区久久w| 国产一区在线观看麻豆| 国产在线播放一区三区四| 国产一区二区美女诱惑| 97国产一区二区| 久久久久久久久伊人| 91丨九色丨蝌蚪丨老版| 国产精品福利av| 国产成人免费视频网站高清观看视频| 欧美高清一级片在线| 日韩一级二级三级精品视频| 欧美国产欧美综合| 欧美亚洲禁片免费| 欧美刺激脚交jootjob| 久久99精品一区二区三区三区| 欧美亚洲另类激情小说| 亚洲日本青草视频在线怡红院| 色婷婷亚洲婷婷| 成人精品视频一区二区三区 | 蜜桃一区二区三区在线| 国产精品一级片在线观看| 日韩高清国产一区在线| 高清av一区二区| 香蕉加勒比综合久久| 欧美乱妇23p| 韩国女主播一区| 国产视频一区二区三区在线观看| 亚洲国产一区在线观看| 欧美一区二区国产| 精品国精品自拍自在线| 精品处破学生在线二十三| www久久精品| 99精品欧美一区二区蜜桃免费| 国内精品久久久久影院薰衣草| 久久久久久久一区| 欧美岛国在线观看| 国产伦精品一区二区三区视频青涩 | 国产99精品国产| 中文字幕精品一区| 久久国产精品99久久久久久老狼| 日本sm残虐另类| 视频在线观看91| 国产成人精品三级| 日韩三级视频中文字幕| 91视频一区二区| 91欧美激情一区二区三区成人| 日韩一本二本av| 中文字幕亚洲在| 国模冰冰炮一区二区| 久久久久国色av免费看影院| 国内成人精品2018免费看| 久久众筹精品私拍模特| 日本精品视频一区二区| 国产凹凸在线观看一区二区| 国内精品久久久久影院色| 日本一区二区成人在线| 欧美日韩一区二区三区免费看| 日本一区二区三区四区在线视频| 成人午夜精品在线| 欧美亚洲愉拍一区二区| 亚洲欧美成aⅴ人在线观看| 热久久国产精品| 国产成人av电影在线播放| 午夜精品一区二区三区免费视频 | 亚洲妇熟xx妇色黄| 成人动漫中文字幕| 亚洲一区二区中文在线| 91精品国产欧美一区二区成人 | 久久日韩粉嫩一区二区三区 | 亚洲小说欧美激情另类| 成人激情小说乱人伦| av在线播放不卡| 午夜电影网亚洲视频| 欧美视频一区二区三区在线观看| 三级欧美在线一区| 亚洲人成伊人成综合网小说| 日韩欧美国产一区在线观看| 自拍视频在线观看一区二区| 波多野结衣视频一区| 亚洲黄一区二区三区| www.视频一区| 欧美r级电影在线观看| 免费日韩伦理电影| 欧美精彩视频一区二区三区| 在线视频欧美区| 五月婷婷激情综合| 亚洲成人av一区| 久久综合九色综合97_久久久| 99久久久久免费精品国产| 国产精品一区一区三区| 精品系列免费在线观看| 色综合久久久久久久久久久| 亚洲一区二区av在线| 亚洲色图欧美激情| 国产精品进线69影院| 欧洲精品一区二区三区在线观看| 欧美激情一区二区三区在线| 欧美理论电影在线| 8x福利精品第一导航| 色综合久久88色综合天天免费| 精品成人一区二区三区| 欧美精三区欧美精三区| 日韩写真欧美这视频| 日本一区二区电影| 亚洲444eee在线观看| 国产欧美一区视频| 国产精品不卡在线| 一区二区三区影院| 中文字幕一区av| 精品成人在线观看| 欧美精品一二三区| 91麻豆精品视频| 91免费精品国自产拍在线不卡| 国产一区二区在线观看免费| 成人免费视频在线观看| 成人免费在线播放视频| 国产精品2024| 日韩欧美国产电影| 婷婷夜色潮精品综合在线| 日本一不卡视频| 处破女av一区二区| 麻豆视频一区二区| 风间由美一区二区av101| 欧美高清hd18日本| 国产午夜精品理论片a级大结局| 日韩国产欧美三级| 婷婷开心激情综合| 韩国中文字幕2020精品| 欧美日本在线视频| 国产精品午夜春色av| 日韩电影在线观看网站| 欧美日韩黄色影视| 一区二区国产盗摄色噜噜|