因为这里是做小程序,所以就不对 WebSocket 的底层和协议做过多的说明了,只是稍微介绍一下。想了解详细的 WebSocket 可以参考如下:
具体方法如下:
创建一个 WebSocket 连接。
监听WebSocket连接打开事件。
监听WebSocket错误。
通过 WebSocket 连接发送数据,需要先 wx.connectSocket ,并在 wx.onSocketOpen 回调之后才能发送。
监听WebSocket接受到服务器的消息事件。
关闭 WebSocket 连接。
定时心跳,按各种情况设置为10-20秒。心跳作用:通知后台保活,如果停止心跳消息,后台会主动断开,走断开流程。
使用过程中,可能因为网络问题,导致websocket断开连接,首先更具业务需求,判断是否需要重连,如果要重连不建议立刻重连,可做一个延迟 *** 作,再进行重连。
微信小程序官方提供了基础的websocket API接口,可以和自己的websocket服务器进行通信。虽然有了接口,但websocket服务器需要自己搭建,这并不是一件容易的事情。
可以试试我们的GoEasy,一款第三方的websocket框架服务,很好的支持微信小程序。
使用GoEasy,你无需搭建websocket服务器,通过GoEasy提供的接口,你可以很方便、快捷的将信息发送到任何你的客户端。
具体的使用方法在下面:
登录自己的微信公众平台
进入微信公众平台|小程序 ->设置 ->开发设置 ->服务器域名 选项的 socket合法域名项
添加 goeasy的地址: wx-hangzhou.goeasy.io
获取 GoEasy SDK
下载 https://cdn.goeasy.io/download/goeasy-1.0.11.js
import GoEasy from './goeasy-1.0.11'
初始化 GoEasy 对象
// 在onLaunch方法里初始化全局GoEasy对象this.globalData.goEasy = new GoEasy({
host: "hangzhou.goeasy.io", //应用所在的区域地址: 【hangzhou.goeasy.io | singapore.goeasy.io】
appkey: "my_appkey", //替换为您的应用appkey
onConnected: function() {
console.log('连接成功!')
},
onDisconnected: function() {
console.log('连接断开!')
},
onConnectFailed: function(error) {
console.log('连接失败或错误!')
}})
小程序端接收消息
getApp().globalData.goEasy.subscribe({
channel: "my_channel", //替换为您自己的channel
onMessage: function (message) {
console.log("Channel:" + message.channel + " content:" + message.content)
}})
小程序端发送消息:
getApp().globalData.goEasy.publish({
channel: "my_channel", //替换为您自己的channel
message: "Hello, GoEasy!" //替换为您想要发送的消息内容})
以上便是在微信小程序中使用websocket的步骤,这里提供一份教程和demo,希望对你有所帮助:网页链接
在小程序开发过程中,经常需要 消息推送 、 即时通讯 的功能支持,小程序提供了WebSocket的接口以满足以上需求,今天我们就来讲讲小程序中的WebSocket接口的使用
一般情况下使用WebSocket使用是这样的
那如果我们想同时建立多个Socket连接该怎么办?接着往下看
这里必须用到 SocketTask 接口,通过 wx.connectSocket() 接口创建返回
这样就可以实现多个websocket同时通信啦,不过有一点要注意
好啦,以上就是我本次分享的全部内容啦,如果你觉得我的文章对你有一丢丢帮助,那么请不要吝啬你的赞
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)