我要疯了,你们都用不上HarmonyOS鸿蒙Next中的stomp协议吗
我要疯了,你们都用不上HarmonyOS鸿蒙Next中的stomp协议吗 在OpenHarmony三方库中心仓中有两个依赖:@ohos/stompjs和@zaun/stompjs
前者使用示例代码没有问题,连接我自己的ws端点就接收不了消息(我的websocket在网页上是能正常使用的)。调试了一下午解决不了,没文档,网上搜什么都搜不到。
后者连端点都连不上
connect() {
console.log('connect');
this.client = new Client({
brokerURL: this.url,
connectHeaders: {
Authorization: 'Bearer ' + this.token,
},
onConnect: () => {
console.log('连接成功');
this.message = '连接成功\n' + this.message;
this.client.subscribe('/user/queue/greeting', (message) => {
this.message = JSON.stringify(message.body) + '\n' + this.message;
})
},
onStompError: (error) => {
console.log('连接失败');
this.message = '连接失败\n' + this.message;
},
onDisconnect: () => {
console.log('断开连接');
this.message = '断开连接\n' + this.message;
}
});
console.log(JSON.stringify(this.client))
this.client.activate();
}
日志输出如下
{
"stompVersions":{"versions":["1.2","1.1","1.0"]},
"connectionTimeout":0,
"reconnectDelay":5000,
"heartbeatIncoming":10000,
"heartbeatOutgoing":10000,
"splitLargeFrames":false,
"maxWebSocketChunkSize":8192,
"forceBinaryWSFrames":false,
"appendMissingNULLonIncoming":false,
"discardWebsocketOnCommFailure":false,
"state":2,"logRawCommunication":false,
"connectHeaders":{"Authorization":"Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0ZXN0IiwiZGVwdElkIjozLCJkYXRhU2NvcGUiOjEsImV4cCI6MTc0MzI2NTc4MywidXNlcklkIjozLCJpYXQiOjE3NDMyNTg1ODMsImF1dGhvcml0aWVzIjpbIlJPTEVfQURNSU4xIl0sImp0aSI6ImIwYmE5OWYyZDE0MjQ4NWM4OTIzMGFmMTVlZDAwYTAzIn0.GLR27miRiYbRq8YVrDgaijnT_JrGfGxuSh3ZkZkXWh0"},
"_disconnectHeaders":{},
"brokerURL":"ws://192.168.46.225:8989/ws"
}
我现在只能使用原生的websocket,手动发送connect帧建立stomp连接了
更多关于我要疯了,你们都用不上HarmonyOS鸿蒙Next中的stomp协议吗的实战教程也可以访问 https://www.itying.com/category-93-b0.html
1 回复
更多关于我要疯了,你们都用不上HarmonyOS鸿蒙Next中的stomp协议吗的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,STOMP协议(Simple Text Oriented Messaging Protocol)通常用于消息传递和通信。如果你遇到使用问题,建议检查以下几点:
-
确保你的开发环境已正确配置,并安装了必要的依赖库。
-
确认STOMP客户端库与HarmonyOS版本兼容。
-
检查网络连接和服务器配置,确保消息代理服务正常运行。
-
参考官方文档和社区资源,获取最新的使用指南和示例代码。如果问题依旧,建议在开发者社区或论坛中寻求帮助。