美文网首页
小程序WebSocket

小程序WebSocket

作者: Qianshui321 | 来源:发表于2019-08-15 11:46 被阅读0次

    官方文档:
    https://developers.weixin.qq.com/miniprogram/dev/api/network/websocket/wx.sendSocketMessage.html

    我的代码:

    var webScoket = {
      init:function(){
        this.open();// 打开连接
        this.close();// 监听连接是否关闭
        this.error();//监听连接错误
        this.recvData();//接收数据
        this.connect();//连接      
      }, 
      open:function(){
        //打开连接
    
        var _this = this;
        wx.onSocketOpen(() => {
          console.log('WebSocket 已连接')
          
        });
      },
      close:function(){
        // 关闭连接
        var _this = this;
        wx.onSocketClose(() => {
          console.log('WebSocket 已断开');
          _this.connect();// 重连(没有网络的情况下不重连)
        })
      },
      error:function(){
        //连接错误
        wx.onSocketError(error => {
          console.error('socket error:', error);
          _this.connect();// 重连(没有网络的情况下不重连)
        })
      },
      recvData:function(callback){
        //接收数据
        wx.onSocketMessage(message => {
          // console.log('socket message:', message)
          //数据处理。方便界面中处理数据
          callback(message);
        })
      },
      connect:function(){
        wx.connectSocket({
          url: 'xxxx'//填写wss地址
        });  
      },
      send:function(msg){
        // 发送指令
        wx.sendSocketMessage({
          data: msg,
          success: function (ret) {
            console.log('发送', ret)
    
          },
          fail: function (ret) {
            console.log(ret)
          }
        });
      }
    }
    
    webScoket.init();
    
    module.exports = {
      ws: webScoket
    }
    

    相关文章

      网友评论

          本文标题:小程序WebSocket

          本文链接:https://www.haomeiwen.com/subject/jtaajctx.html