创建一个websocket.js,将以下内容放进去


// const config = require('./config.js')
const app = getApp();
// const host = config.websocketServer; // websocket服务器baseUrl
let sotk = null;
let socketOpen =false;
console.log(123456,app)
function ws_connect(reMsg){
  sotk = wx.connectSocket({
    url: app.globalData.socketApi,
    header: {
      'content-type': 'application/json'
    }
  })

  sotk.onOpen(res => {
    socketOpen = true;
    // console.log('监听 WebSocket 连接打开事件。', res);
  })
  sotk.onClose(onClose => {
    socketOpen = false;
    // console.log('监听 WebSocket 连接关闭事件。', onClose)
  })
  sotk.onError(onError => {
    socketOpen = true;
    // console.log('监听 WebSocket 错误。错误信息', onError)
  })

  // 收到消息
  sotk.onMessage(onMessage => {
    // var data = JSON.parse(onMessage.data);
    reMsg(onMessage);
  })
}

function sendMsg(msg,success){
  if (socketOpen) {
    // console.log('通过 WebSocket 连接发送数据', JSON.stringify(msg))
    sotk.send({
      data: JSON.stringify(msg)
    }, function (res) {
      success(res)
    })
  }
}

module.exports.ws_connect = ws_connect;
module.exports.sendMsg = sendMsg;

在使用页面的JS中通过let websocket = require(’…/…/utils/websocket’)引入该文件,路径请根据自己存储的对应路径引入。

websocket.ws_connect(data=>{
	console.log(data)  //打印常链接返回的更新内容
});
//发送常链接消息
websocket.sendMsg(msg,success){
	//msg是发送的内容
	//success成功返回的方法
}
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐