微信小程序websocket用法详解,含前后端代码

微信小程序websocket用法详解,含前后端代码

目前浏览器对 WebSocket 的支持程度已经很好,加上微信小程序的平台支持,websocket这种可以极大提高客户端体验的通信方式将会变得更加主流。

要想在微信小程序中使用websocket,不仅微信小程序前端需要实现websocket协议,Server 端后端也需要实现 WebSocket 协议,才能支持微信小程序的 WebSocket 请求。

要快速做好前后端的websocket服务开发部署本身不是一件简单的事情,要支持高并发、高稳定性就更难了。

好在GoEasy为大家提供了方便快捷的前后端集成websocket服务,能够让开发者在较短时间内就实现小程序websocket服务的搭建。

下面我给大家讲解一下微信小程序websocket用法指南:

 首先需要您进入微信公众平台|小程序 -> 设置 -> 开发设置 -> 服务器域名 选项的 socket合法域名项添加 goeasy的地址: wx-hangzhou.goeasy.io

1、引入 GoEasy:

目前GoEasy提供三种方式的引入,你可以根据实际项目的需求进行选择引入方式。

<script type=”text/javascript” src=”https://cdn.goeasy.io/goeasy-1.0.3.js”></script>

npm install –save goeasyimport GoEasy from ‘goeasy’;

或下载 https://cdn.goeasy.io/goeasy-1.0.3.js

import GoEasy from ‘./goeasy-1.0.3’;

2、初始化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('连接失败或错误!')
    }
});

到此,我们已在微信微信小程序中完成了GoEasy服务的引入,接下来我们要进行在微信小程序中的收发消息测试。

3、小程序端接收消息:

getApp().globalData.goEasy.subscribe({
    channel: "my_channel", //替换为您自己的channel
    onMessage: function (message) {
        console.log("Channel:" + message.channel + " content:" + message.content);
    }
});

4、小程序端发送消息:

getApp().globalData.goEasy.publish({
    channel: "my_channel", //替换为您自己的channel
    message: "Hello, GoEasy!" //替换为您想要发送的消息内容
});

5、服务端推送消息:

在 实际开发过程中,我们更多的会是从服务器端往微信小程序端发送消息。针对这样的使用场景,GoEasy提供了丰富的服务端Rest API接口,免去了自行搭建websocket服务器的麻烦。通过GoEasy提供的Rest API接口,你可以方便快捷的推送消息到微信小程序端。

URL:http(s)://<REST Host>/publish

在使用Rest API的过程中,请根据您的应用所在区域,替换<REST Host>,杭州:rest-hangzhou.goeasy.io,新加坡:rest-singapore.goeasy.io。

Method:Post

参数:

参数名字是否必须描述
appkey您的appkey
channel您的目标channel
content推送的消息内容

更多关于Rest API的使用技巧,可以来这里看看:GoEasy服务器发送消息,GoEasy提供了php、java、python等多种服务端语言的支持。

如果你需要微信小程序websocket的demo演示代码,可以注册GoEasy开发者账号,然后在GoEasy控制台联系GoEasy技术支持获取。【立即注册

Comments are closed.