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

首頁 > 開發(fā) > JS > 正文

微信小程序使用Socket的實例

2024-05-06 16:39:49
字體:
供稿:網(wǎng)友

微信小程序使用Socket的實例

首先,一個小程序同時只能有一個WebSocket連接,如果當(dāng)前已經(jīng)存在一個WebSocket連接,會關(guān)閉當(dāng)前連接,并重新建立一個連接。

其次,如果使用了appID,協(xié)議必須是 wss://...

最近團(tuán)隊用小程序做行情,在連接socket的時候,發(fā)現(xiàn)在還沒有進(jìn)行subscribe的情況下,就直接進(jìn)行了廣播,并且自動關(guān)閉了socket連接,

時間緊迫,抓耳撓腮,遂引用了socket-io(基于小程序的websocket仿寫的socket-io,并非官方的socket-io,傳送門),使用方法:

1、先在utils文件夾粘貼一個io的js

2、然后 npm install wxapp-socket-io

3、config文件夾下新建一個socket.js,對socket連接進(jìn)行封裝,如下:

const io = require('../utils/io.js')let url = 'wss://......'let wsStatus = falselet onSocket = nullexport const connect = function(cb){  if(!onSocket){    onSocket = io(url)    onSocket.on('connect', function (res) {      cb(true,onSocket)      wsStatus = true    })    setTimeout(function(){      if(!wsStatus){        cb(false,onSocket)      }    },10000)  }else{    cb(true,onSocket)  }}

4、在要引用的頁面調(diào)用,全局封裝訂閱方法

let openSocket = require('../../config/socket')let app = getApp()let socket = nullPage({data: {  zl: [[422, 400, 468, 834, 785, 446, 845, 517, 630, 797, 890, 529, 553, 425, 469, 470, 837, 841, 521, 525], [422, 400, 468, 834, 785, 446, 845, 517, 630, 797, 890, 529, 553, 425, 469, 470, 837, 841, 521, 525]]},onLoad: function () {  let that = this;  //socket調(diào)用  openSocket.connect(function (status, ws) {    if (status) {      socket = ws      this.subscribe('zl')//對封裝好對訂閱方法進(jìn)行調(diào)用      socket.on('broadcast', function (msg) {//廣播        console.log("broadcast");        console.log(msg);      })    } else {      alert("socket 連接失敗")    }  });},subscribe: function (type) {  if (socket) {    let eis = this.data[type]    if (eis && eis.length > 0) {      let param = {//僅供參考,根據(jù)接口自行更改        eis: eis.join(',')      }      socket.emit('subscribe', JSON.stringify(param));    }  }}});

如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


注:相關(guān)教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 宁津县| 祁门县| 固始县| 泾源县| 宜川县| 南岸区| 宜兰县| 西乌| 庆城县| 盘山县| 龙川县| 车致| 榆社县| 秭归县| 黄大仙区| 格尔木市| 伊吾县| 开远市| 桃江县| 资溪县| 原平市| 岚皋县| 金溪县| 广南县| 和硕县| 台中市| 敖汉旗| 弥勒县| 镇原县| 长海县| 从化市| 洛阳市| 招远市| 静宁县| 肇东市| 普兰店市| 靖安县| 甘肃省| 牙克石市| 云安县| 祥云县|