| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 微信小程序的websocket使用stomp协议--简单实用的npm包 -> 正文阅读 |
|
[网络协议]微信小程序的websocket使用stomp协议--简单实用的npm包 |
需求背景在公司实习期间,要求做一个小程序的 其中后端使用的是stomp协议,而微信小程序是不支持stomp协议的。但是当我知道的时候,后端已经全部调好只等我接入了… 由于小程序的心跳机制和浏览器略有不同,其原生的 实现过程解决心跳机制问题由于小程序的没有window对象,而前端的stompjs使用到的心跳机制是依赖于window对象完成的。所以需要对原生的stomp稍加修改:
解决微信原生接口不会处理JSON数组问题当后端使用stomp的时候,会向前端发送JSON数组,而前端也应该向后端发布JSON数组的形式。同时stomp也会发送单个字符来表示当前状态 例如以下network的message: 后端连接回复:
前端发送消息:
心跳等待标志:
微信的原生接口不会处理这类数据,这意味着我们使用 发送阶段:
接收消息:
封装成npm包(wx-stomp)解决完原生的问题,我们将其他的几类功能和监听也都封装成函数,并且写成类的形式方便到处创建实例。 为了在以后的相同环境下也可以快速使用,同时也为了其他遇到这样问题的同学一起入坑😋,所以将API封装成了一个npm包,其名称为 使用方法:
npm包地址: wx-stomp - npm (npmjs.com) 后记由于之前对于 另一方面,我仅仅是在我们的小程序的使用环境下封装了几个常用必用的方法,像连接,订阅,发送,取消订阅和关闭连接等。如果需要其他方法,可以在gitee上提出issue,或者加入这个开源项目,完善wx-stomp。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 8:22:46- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |