创建一个websocket.js,将以下内容放进去
// const config = require('./config.js')
const app = getApp();
// const host = config.websocketServer; // websocket服务器baseUrl
let sotk = null;
let socketOpen =false;
console.log(123456,app)
function ws_connect(reMsg){
sotk = wx.connectSocket({
url: app.globalData.socketApi,
header: {
'content-type': 'application/json'
}
})
sotk.onOpen(res => {
socketOpen = true;
// console.log('监听 WebSocket 连接打开事件。', res);
})
sotk.onClose(onClose => {
socketOpen = false;
// console.log('监听 WebSocket 连接关闭事件。', onClose)
})
sotk.onError(onError => {
socketOpen = true;
// console.log('监听 WebSocket 错误。错误信息', onError)
})
// 收到消息
sotk.onMessage(onMessage => {
// var data = JSON.parse(onMessage.data);
reMsg(onMessage);
})
}
function sendMsg(msg,success){
if (socketOpen) {
// console.log('通过 WebSocket 连接发送数据', JSON.stringify(msg))
sotk.send({
data: JSON.stringify(msg)
}, function (res) {
success(res)
})
}
}
module.exports.ws_connect = ws_connect;
module.exports.sendMsg = sendMsg;
在使用页面的JS中通过let websocket = require(’…/…/utils/websocket’)引入该文件,路径请根据自己存储的对应路径引入。
websocket.ws_connect(data=>{
console.log(data) //打印常链接返回的更新内容
});
//发送常链接消息
websocket.sendMsg(msg,success){
//msg是发送的内容
//success成功返回的方法
}
|