小程序 WebSocket

  • wx.sendSocketMessage
    通過 WebSocket 連接發送數據。需要先 wx.connectSocket,並在 wx.onSocketOpen 回調之後才能發送。
  • onSocketOpen
    監聽 WebSocket 連接打開事件
  • onSocketMessage
    監聽 WebSocket 接受到服務器的消息事件
  • onSocketError
    監聽 WebSocket 錯誤事件
  • onSocketClose
    監聽 WebSocket 連接關閉事件
  • connectSocket
    創建一個 WebSocket 連接
  • closeSocket
    關閉 WebSocket 連接

使用 WebSocket 收發消息

創建服務器,開啓服務

let Ws = require("ws").Server;  //引入ws
let wss = new Ws({
    port:8282       //端口號
});
// 監聽是否有鏈接,接入
wss.on("connection",function(wst){// connection可以多端口鏈接 誰鏈傳過來參數表示是 誰
    console.log("有鏈接進來")  //輸出測試
    wst.on("message",res=>{  //鏈接成功 res接收前端傳遞的值
        console.log(res)
        //誰鏈進來 給誰 發送消息
        wst.send(JSON.stringify({name:"張三"}))
    })
})

點擊按鈕發送消息

<button bindtap="sendMessage">點擊發送消息</button>
Page({
  // 點擊按鈕發送消息
  sendMessage(){
    wx.sendSocketMessage({ //
      data: "發送數據....",
    })
  },
  /**
   * 生命週期函數--監聽頁面加載
   */
  onLoad: function (options) { //頁面以加載  就創建連接
    // 創建一個ws的連接
    wx.connectSocket({
      url: 'ws://192.168.43.183:8282', //這裏查看計算機網絡地址
    })
    // 監聽是否連接     
    wx.onSocketOpen((result) => {
        console.log("連接成功")
    })
    // 監聽收到的消息
    wx.onSocketMessage((result) => {
        console.log(result) //輸出 {name:"張三"}
    })
  }, 
 })
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章