美文网首页微信小程序
小程序中websocket的使用

小程序中websocket的使用

作者: 勤劳的小仓鼠 | 来源:发表于2019-05-09 09:18 被阅读21次

    先在app.js 中声明并初始化以下

    startWebSocket: function () {

    var that = this;

        that.WebSocketInit()

        wx.onSocketError(function () {

        })

        wx.onSocketMessage(function (data_) {

          that.socketOperation(data_)

        })

        wx.onSocketClose(function (res) {

          that.WebSocketInit()

        })

      },

    //连接websocket

      WebSocketInit: function () {

        wx.connectSocket({

          url: this.data.wws,

          data: {},

          method: 'GET',

          success: function (res) {

            console.log("connectSocket 成功")

          },

          fail: function (res) {

            console.log("connectSocket 失败")

          }

        })

        wx.onSocketOpen(function () {

          // callback

          var mCmd = { "cmd": "connect.Connect", "data": {} }

          wx.sendSocketMessage({

            data: JSON.stringify(mCmd),

            success: function (res) {

              console.log("sendSocketMessage 成功")

            },

            fail: function (res) {

              console.log("sendSocketMessage 失败")

            }

          });

    wx.onSocketMessage(function (data) {

            console.log("onSocketMessage ", data)

          })

        })

    },

    2.然后在新建一个辅助js来发送和接收数据

    function sendMessage() {

      var mCmd = { "cmd": "connect.getWlList", "data": { "mdd": "370600" } }

      wx.sendSocketMessage({

        data: JSON.stringify(mCmd),

        success:function(res){

        }

      })

    }

    function resiverMessage(context) {

      wx.onSocketMessage(function (data) {

        context.onMessage(JSON.parse(data.data)) //这里定义一个onMessage方法,用于每个页面的回调

    }) } module.exports = { formatNumber: formatNumber, judge: judge, sendMessage: sendMessage, resiverMessage: resiverMessage }

    3.使用的话也很简单

    onMessage: function (res) {

        this.setData({ data: res.data });

        console.log(res);

      },

      onLoad: function (options) {

        app.data.util.sendMessage();

        app.data.util.resiverMessage(this)

    }

    相关文章

      网友评论

        本文标题:小程序中websocket的使用

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