python stomp 收发指定的消息

2023-01-31 02:01:06 消息 指定 收发
# -*- coding: utf-8 -*-
import sys
import time
import sys
import stomp

class MyListener(object):
    def on_error(self, headers, message):
        print('received an error %s' % message)
    def on_message(self, headers, message):
        print('received a message %s' % headers)


conn = stomp.Connection10([('localhost',61613)])  
conn.set_listener('logicServerQueue', MyListener())
conn.start()
conn.connect(wait=True)


# 发送消息到testQueue队列,指定consumerId='88.3@6006'
conn.send(body=b'hahah', destination='testQueue', headers={'consumerId': '88.3@6006'})
# 从testQueue队列中接收消息,用selector过滤,只接收consumerId = '88.3@6006'的消息
conn.subscribe(destination='testQueue', headers={'selector' : "consumerId = '88.3@6006'"})

while True:
    try:
        time.sleep(1)
    except:
        break

conn.disconnect()

time.sleep(2)
conn.disconnect()

这里写图片描述

从控制台可以看出consumerId = ‘88.3@6006’被设置到了消息的headers中

相关文章