微信小程序客户端与服务端进行WebSocket通信

(一)首先去nginx配置websocket的通信协议

(二)然后编写wx.js代码

Page({
  data: {
    socketStatus: 'closed',
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var that = this;
    if (that.data.socketStatus === 'closed') {
      that.openSocket();
    }

  },

  openSocket:function() {
    //打开时的动作
     wx.onSocketOpen(() => {
       console.log('WebSocket 已连接')
       this.data.socketStatus = 'connected';
       this.sendMessage();
     })
     //断开时的动作
     wx.onSocketClose(() => {
       console.log('WebSocket 已断开')
       this.data
以下是一个简单的微信小程序服务端进行socket通信的示例代码: 小程序端代码: ```javascript const socketTask = wx.connectSocket({ url: 'wss://example.com/ws', header: { 'content-type': 'application/json' }, success: function () { console.log('WebSocket连接成功') } }) socketTask.onOpen(function () { console.log('WebSocket已打开') socketTask.send({ data: 'Hello, WebSocket!' }) }) socketTask.onMessage(function (res) { console.log('收到服务器内容:' + res.data) }) socketTask.onClose(function () { console.log('WebSocket已关闭') }) socketTask.onError(function () { console.log('WebSocket连接发生错误') }) ``` 服务端代码: ```javascript const WebSocket = require('ws') const wss = new WebSocket.Server({ port: 8080 }) wss.on('connection', function (ws) { console.log('WebSocket已连接') ws.on('message', function (message) { console.log('收到客户端内容:' + message) ws.send('Hello, WebSocket!') }) ws.on('close', function () { console.log('WebSocket已关闭') }) }) ``` 这段代码中,小程序使用`wx.connectSocket()`方法连接到服务端WebSocket地址,并监听WebSocket事件,当连接成功、收到消息、关闭WebSocket连接、连接发生错误时进行相应的处理。服务端使用`ws`模块创建WebSocket服务器,并监听WebSocket连接事件,当有客户端连接到WebSocket服务器时,也会进行相应的处理,包括收到客户端消息、发送消息和关闭WebSocket连接等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不努力谁会可怜你?

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值