国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
什么是 WebSocket
HTML5 中的 WebSocket" >HTML5 中的 WebSocket
兼容性
優(yōu)勢
實際應用
參考
首頁 web前端 H5教程 什么是 WebSocket?深入理解html5中WebSocket

什么是 WebSocket?深入理解html5中WebSocket

May 08, 2017 pm 01:46 PM

什么是 WebSocket

WebSocket的服務(wù)端和客戶端可以雙向進行通訊,并且允許跨域通訊。由HTTP/1.1Upgrade機制支持,通過ws(非加密)或wss(加密)協(xié)議進行通訊

WebSocket WebSocket(
  in DOMString url,
  in optional DOMString protocols
);

WebSocket WebSocket(
  in DOMString url,
  in optional DOMString[] protocols
);

HTML5 中的 WebSocket

HTML5只專注于客戶端的<a href="http://m.miracleart.cn/js/js-weixinapp-api.html" target="_blank">API</a>, 而服務(wù)器端是各個語言自己去實現(xiàn)

// 創(chuàng)建一個Socket實例
var socket = new WebSocket(&#39;ws://localhost:8080&#39;);
// 打開Socket 
socket.onopen = function(event){
  // 發(fā)送一個初始化消息
  socket.send(&#39;I am the client and I\&#39;m listening!&#39;);
  // 監(jiān)聽消息
  socket.onmessage = function(event){
    console.log(&#39;Client received a message&#39;,event);
  };
  // 監(jiān)聽Socket的關(guān)閉
  socket.onclose = function(event){
    console.log(&#39;Client notified socket has closed&#39;,event);
  };
  // 關(guān)閉Socket.... 
  //socket.close()
};

事件
onclose onerror onmessage onopen

屬性

  • readyState: CONNECTING 0 OPEN 1 CLOSING 2 CLOSED 3

  • binaryType: String Blob <a href="http://m.miracleart.cn/wiki/58.html" target="_blank">Array</a>Buffer

兼容性

方法1:
如果客戶端不支持WebSocket, 那么可以使用幾個候選選項 Flash Socket AJAX long-polling AJAX multipart streaming IFrame <a href="http://m.miracleart.cn/wiki/1488.html" target="_blank">JSON</a>P polling

方法2
使用Socket.io來抹平差異,該庫可以在瀏覽器不支持WebSocket的時候, 自動用瀏覽器支持的消息推送方式進行連接, 該庫還會檢測連接是否掉線,并在掉線時自動為你重新連接。

// 創(chuàng)建Socket.IO實例,建立連接
var socket= new io.Socket(&#39;localhost&#39;,{
  port: 8080,
});
socket.connect();
// 添加一個連接監(jiān)聽器
socket.on(&#39;connect&#39;,function(){
  console.log(&#39;Client has connected to the server!&#39;);
});
// 添加一個連接監(jiān)聽器
socket.on(&#39;message&#39;,function(data){
  console.log(&#39;Received a message from the server!&#39;,data);
});
// 添加一個關(guān)閉連接的監(jiān)聽器
socket.on(&#39;disconnect&#39;,function(){
  console.log(&#39;The client has disconnected!&#39;);
});
// 通過Socket發(fā)送一條消息到服務(wù)器
function sendMessageToServer(message){
  socket.send(message);
}

優(yōu)勢

  • 實時雙向通信

  • 瀏覽器本地支持良好(兼容性可以用第三方庫很好解決)

  • 支持自定義協(xié)議

實際應用

  • 聊天室

  • 服務(wù)器消息推送

  • 前后端實時系統(tǒng)

參考

  • Websocket | MDN

  • 認識HTML5的WebSocket

【相關(guān)推薦】

1.?免費h5在線視頻教程

2.?HTML5 完整版手冊

3.?php.cn原創(chuàng)html5視頻教程

以上是什么是 WebSocket?深入理解html5中WebSocket的詳細內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權(quán)歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

H5是HTML5的速記嗎?探索細節(jié) H5是HTML5的速記嗎?探索細節(jié) Apr 14, 2025 am 12:05 AM

H5不僅僅是HTML5的簡稱,它代表了一個更廣泛的現(xiàn)代網(wǎng)頁開發(fā)技術(shù)生態(tài):1.H5包括HTML5、CSS3、JavaScript及相關(guān)API和技術(shù);2.它提供更豐富、互動、流暢的用戶體驗,能在多設(shè)備上無縫運行;3.使用H5技術(shù)??梢詣?chuàng)建響應式網(wǎng)頁和復雜交互功能。

H5和HTML5:網(wǎng)絡(luò)開發(fā)中常用的術(shù)語 H5和HTML5:網(wǎng)絡(luò)開發(fā)中常用的術(shù)語 Apr 13, 2025 am 12:01 AM

H5與HTML5指的是同一個東西,即HTML5。HTML5是HTML的第五個版本,帶來了語義化標簽、多媒體支持、畫布與圖形、離線存儲與本地存儲等新功能,提升了網(wǎng)頁的表現(xiàn)力和交互性。

了解H5代碼:HTML5的基本原理 了解H5代碼:HTML5的基本原理 Apr 17, 2025 am 12:08 AM

HTML5是構(gòu)建現(xiàn)代網(wǎng)頁的關(guān)鍵技術(shù),提供了許多新元素和功能。1.HTML5引入了語義化元素如、、等,增強了網(wǎng)頁結(jié)構(gòu)和SEO。2.支持多媒體元素和,無需插件即可嵌入媒體。3.表單增強了新輸入類型和驗證屬性,簡化了驗證過程。4.提供了離線和本地存儲功能,提升了網(wǎng)頁性能和用戶體驗。

HTML5:現(xiàn)代網(wǎng)絡(luò)的基礎(chǔ)(H5) HTML5:現(xiàn)代網(wǎng)絡(luò)的基礎(chǔ)(H5) Apr 21, 2025 am 12:05 AM

HTML5是超文本標記語言的最新版本,由W3C標準化。HTML5引入了新的語義化標簽、多媒體支持和表單增強,提升了網(wǎng)頁結(jié)構(gòu)、用戶體驗和SEO效果。HTML5引入了新的語義化標簽,如、、、等,使網(wǎng)頁結(jié)構(gòu)更清晰,SEO效果更好。HTML5支持多媒體元素和,無需第三方插件,提升了用戶體驗和加載速度。HTML5增強了表單功能,引入了新的輸入類型如、等,提高了用戶體驗和表單驗證效率。

HTML5和H5:了解常見用法 HTML5和H5:了解常見用法 Apr 22, 2025 am 12:01 AM

HTML5和H5沒有區(qū)別,H5是HTML5的簡稱。1.HTML5是HTML的第五個版本,增強了網(wǎng)頁的多媒體和交互功能。2.H5常用于指代基于HTML5的移動網(wǎng)頁或應用,適用于各種移動設(shè)備。

HTML5:標準及其對Web開發(fā)的影響 HTML5:標準及其對Web開發(fā)的影響 Apr 27, 2025 am 12:12 AM

HTML5的核心特性包括語義化標簽、多媒體支持、離線存儲與本地存儲、表單增強。1.語義化標簽如、等,提升代碼可讀性和SEO效果。2.和標簽簡化多媒體嵌入。3.離線存儲和本地存儲如ApplicationCache和LocalStorage,支持無網(wǎng)絡(luò)運行和數(shù)據(jù)存儲。4.表單增強引入新輸入類型和驗證屬性,簡化處理和驗證。

H5和HTML5之間的連接:相似性和差異 H5和HTML5之間的連接:相似性和差異 Apr 24, 2025 am 12:01 AM

H5和HTML5是不同的概念:HTML5是HTML的一個版本,包含新元素和API;H5是基于HTML5的移動應用開發(fā)框架。HTML5通過瀏覽器解析和渲染代碼,H5應用則需要容器運行并通過JavaScript與原生代碼交互。

理解H5:含義和意義 理解H5:含義和意義 May 11, 2025 am 12:19 AM

H5是HTML5,是HTML的第五個版本。HTML5提升了網(wǎng)頁的表現(xiàn)力和交互性,引入了語義化標簽、多媒體支持、離線存儲和Canvas繪圖等新特性,推動了Web技術(shù)的發(fā)展。

See all articles