Python stomp 发送消息无法显示文本

我们向消息服务器通过 stomp 发送的是文本消息。

当消息服务器发送成功后,消息服务器上的文本没有显示,显示的是 2 进制的数据。

如上图,消息没有作为文本来显示。

问题和解决

消息服务器是如何判断发送的小时是文本还是二进制的。

根据官方的说, Stomp 如设置了 content-length 就认为是二进制的消息,如果没有设置的话就是文本消息。

让后我们再看看创建消息的源代码:

在 Stomp 的源代码中,auto_content_length 这个参数的默认值为 True。

如果我们不在连接的时候进行指派,那么默认就会使用 Ture。

返回到我们的源代码,把上面的参数添加进来。

然后再次发送文本消息。

在这里,我们会看到消息的类型被修改为了文本。

同时我们发送的数据也能够在消息服务器上看到了。

Stomp Python 发送消息源代码

有时候,不得不说,这 Python 的代码是非常简单。

而且可以用好多已经可以用的库了,这个比 Java 是方便不少。

复制代码
import time

import stomp

AMQHOST = "nas1120"
AMQPORT = 61616
AMQUSER = "artemis"
AMQPASS = "artemis"
TOPICNAME = "remotingQueue"

hosts = [(AMQHOST, AMQPORT)]
conn = stomp.Connection(host_and_ports=hosts, auto_content_length=False)
conn.connect(username=AMQUSER, passcode=AMQPASS, wait=True)
conn.send(body='Love Python', destination=TOPICNAME)
time.sleep(320)
conn.disconnect()

上面的代码只需要改一下参数应该就可以发送消息到你想发送的服务器上去了。

Python stomp 发送消息无法显示文本 - Python - iSharkFly

相关推荐
阿正的梦工坊4 小时前
深入理解 PyTorch 中的 unsqueeze 操作
人工智能·pytorch·python
FreakStudio4 小时前
硬件版【Cursor】?aily blockly IDE尝鲜封神,实战硬伤尽显
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
郝学胜-神的一滴6 小时前
Qt 入门 01-01:从零基础到商业级客户端实战
开发语言·c++·qt·程序人生·软件构建
测试员周周6 小时前
【Appium 系列】第06节-页面对象实现 — LoginPage 实战
开发语言·前端·人工智能·python·功能测试·appium·测试用例
2401_873479407 小时前
运营活动被薅羊毛怎么防?用IP查询+设备指纹联动封堵漏洞
java·网络·tcp/ip·github
摇滚侠7 小时前
@Autowired 和 @Resource 的区别
java·开发语言
2301_783848657 小时前
优化文本分类中堆叠模型的网格搜索性能:避免训练卡顿的实战指南
jvm·数据库·python
Wy_编程7 小时前
go语言中的结构体
开发语言·后端·golang
SeaTunnel7 小时前
(八)收官篇 | 数据平台最后一公里:数据集成开发设计与上线治理实战
java·大数据·开发语言·白鲸开源
CLX05057 小时前
如何安装Oracle 12c Cloud Control_OMS服务端组件与Agent部署
jvm·数据库·python