微信小程序实时通讯(websocket)问题

发布时间:2019-06-28 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了微信小程序实时通讯(websocket)问题脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

这几天值班忙的不要不要,人工智能这块看的都是零零散散,今天就来写写小程序的实时通讯吧。
小程序端:
//这个是连接

lianjie:function(){
 VAR socketOPEn = false
//注册信息
var data = { appid: "77494ad321405fb340e2d1a664850954", sid: "123" }
var socketMsgQueue = JSON.stringify(data)
console.LOG(socketMsgQueue)
//建立连接
wx.connectSocket({
  url: "wss://websck.eloeg.wang:20001",
})
//
wx.onSocketOpen(function (res) {
  console.log('WebSocket连接已打开!')
  socketOpen = true
  console.log('数据发送中' + socketMsgQueue)
  sendSocketMessage(socketMsgQueue)
})
function sendSocketMessage(msg) {
  if (socketOpen) {
    wx.sendSocketMessage({
      data: msg
    })
  } else {
    socketMsgQueue.push(msg)
  }
}
wx.onSocketError(function (res) {
  console.log('WebSocket连接打开失败,请检查!')
})
wx.onSocketMessage(function (res) {
  console.log('收到服务器内容:' + JSON.stringify(res))
})

},
//模拟发送数据,因为在建立连接时给自己注册的用户sid为:123,发送数据也发送的是给sid为123的用户即自己,数据为ok12

fasong:function(){
wx.request({
  url: 'https://wss.md.eloeg.wang/erweima/fasong.php',
  method: 'GET',
  header: { 'content-type': 'application/json' },
  data: {
    sid:'123',
    data:"ok12"
  },
  success: function (res) {
    console.log(res)
  }
})

}
效果如图:

微信小程序实时通讯(websocket)问题


后端的php代码:

<?php 
 $appid = '77494ad321405fb340e2d1a664850954'; //填写socket端的appid  
 $appkey = '****************************'; //填写socket端的sercret 
 $apiUrl = '*******************';//发送接口
 $sid=$_GET["sid"];
 $data = $_GET["data"]; //要发送的消息
 $signature = md5($appid.$sid.$data.$appkey);
 $url = $apiUrl.'?appid='.$appid.'&amp;sid='.$sid.'&data='.$data.'&signature='.$signature;
 $htML=file_get_contents($url);
 echo $html;
?>
朋友帮助弄了个workerman的接口,直接进行调用了。所以看起来很简单,这个sid是要给用户进行标记用,要给哪个用户发消息,就在发送时将其sid传送至后台。

脚本宝典总结

以上是脚本宝典为你收集整理的微信小程序实时通讯(websocket)问题全部内容,希望文章能够帮你解决微信小程序实时通讯(websocket)问题所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。