国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > HTML5 > 正文

詳解WebSocket跨域問題解決

2024-09-05 07:22:36
字體:
來源:轉載
供稿:網友

WebSocket protocol是HTML5一種新的協議。它實現了瀏覽器與服務器全雙工通信,同時允許跨域通訊,是server push技術的一種很好的實現。我們使用Socket.io,它很好地封裝了webSocket接口,提供了更簡單、靈活的接口,也對不支持webSocket的瀏覽器提供了向下兼容。

項目中遇到javascript跨域問題,父頁面和子頁面要通信,并且父子頁面跨域,怎么辦?

項目中要保證父子頁面通信是點對點,需要在服務端建立對父子頁面WebSocket的對應關系,即父頁面發的消息只被子頁面收到,子頁面的消息也只被父頁面收到我們做了以下工作,嚴格保證了

WebSocket通信是點對點:

一是建立WebSocket鏈接的URL加上時間戳保證通信會話是唯一的;

二是在服務端保證父子頁面WebSocket一一對應關系。父子頁面的WebSocket在Open時都會向服務端發出消息進行注冊,建立Senssion之間的對應關系。然后父子頁面就可通過雙方約束的通信協議進行通信了。

這里我們寫個demo:

var p = document.getElementsByTagName(‘p’)[0];var io = io.connect(‘http://127.0.0.1:3001’);io.on(‘data’,function(data){alert(‘2S后改變數據’);p.innerHTML = data});

服務器端

var io = require(‘socket.io’)(server);io.on(‘connection’,function(client){client.emit(‘data’,’hello WebSocket from 3001.’);});

今天就說到這里,希望對大家有所幫助,同時大家如果不想太花時間去做WebSocket這塊,可以嘗試使用三方WebSocket,類似GoEasy 極光之類的。

這里推薦GoEasy,簡單易用 www.goeasy.io 還是免費的,可以嘗試一下。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尼玛县| 长宁区| 台中县| 平昌县| 乐亭县| 白水县| 化州市| 江口县| 子洲县| 日土县| 寿阳县| 澄城县| 凌海市| 龙川县| 吉林市| 盐津县| 沙湾县| 遵化市| 河南省| 革吉县| 隆回县| 台前县| 定兴县| 丁青县| 彭阳县| 墨江| 乌审旗| 盖州市| 林周县| 年辖:市辖区| 通州区| 辽阳县| 恭城| 乌什县| 万载县| 鄂州市| 莱西市| 辽源市| 勐海县| 正定县| 南江县|