微信小程序WebSocket协议说明及使用示例分享
- 微信应用
- 2024-10-15 05:39:02
本文带大家了解一下微信的WebSocket接口,并用示例的方式,让我们快速熟悉和用起来。
本文讲述微信小程序websocket协议说明及使用示例分享,用示例的方式,让我们快速熟悉和用起来。websocket是什么(简述)微信的websocket接口和html5的websocket基本一样,是http协议升级来的,做为一个新的socket在b/s上使用,它实现了浏览器与服务器全双工通信。因为这里是做小程序,所以就不对websocket的底层和协议做过多的说明了,只是稍微介绍一下。想了解详细的websocket可以参考如下:
WebSocket 协议
WebSocket与Ajax 的选择在WebSocket出来之前,实现即时通讯通常使用Ajax来实现,而Ajax是通过轮询的方式进行实时数据的获取,轮询就是在指定的时间间隔内,进行HTTP 请求来获取数据,而这种方式会产生一些弊端,一方面产生过多的HTTP请求,占用带宽,增大服务器的相应,浪费资源,另一方面,因为不是每一次请求都会有数据变化(就像聊天室),所以就会造成请求的利用率低。而WebSocket正好能够解决上面的弊端,WebSocket是客户端与服务器之前专门建立一条通道,请求也只请求一次,而且可以从同道中实时的获取服务器的数据,所以当应用到实时的应用上时,WebSocket是一个很不错的选择。WebSocket协议名WebSocket的链接不是以http或https开头的,而是以ws和wss开头的,这里需要注意一下。实例:实时显示交易信息这里类似于实时查看股票信息,这里用到了图表插件wxchart。
wxchart插件地址:基本说的差不多了,正式开始。添加stock页面:
将wxchart.js放入到pages/stock/中。修改stock.wxml:
stock.js代码:
// pages/stock/stock.js//加载插件var wxCharts = require('wxcharts.js');Page({ data: {}, onLoad: function (options) { //建立连接 wx.connectSocket({ url: "ws://localhost:12345", }) //连接成功 wx.onSocketOpen(function() { wx.sendSocketMessage({ data: 'stock', }) }) //接收数据 wx.onSocketMessage(function(data) { var objData = JSON.parse(data.data); console.log(data); new wxCharts({ canvasId: 'lineCanvas',//指定canvas的id animation: false, type: 'line',//类型是线形图 categories: ['2012', '2013', '2014', '2015', '2016', '2017'], series: [{ name: '交易量', data: objData,//websocket接收到的数据 format: function (val) { if (typeof val == "string") { val = parseFloat(val); } return val.toFixed(2) + '万元'; } }, ], yAxis: { title: '交易金额 (万元)', format: function (val) { return val.toFixed(2); }, min: 0 }, width: 320, height: 200 }); }) //连接失败 wx.onSocketError(function() { console.log('websocket连接失败!'); }) },})微信小程序WebSocket协议说明及使用示例分享由讯客互联微信应用栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“微信小程序WebSocket协议说明及使用示例分享”