1. 安装python的stomp库
$ pip install stomp.py
$ stomp --version
输出: 6.1.0
注意, 不同版本的 stomp api 变化较大
2. 代码示例
建立连接
conn = stomp.Connection([('10.161.2.2', 61613)])
conn.connect(username='admin', passcode='admin', wait=True)
消息接收
class SampleListener(object):
def on_message(self, headers, message):
print('headers: %s' % headers)
print('message: %s' % message)
def receive_from_queue():
conn.set_listener('SampleListener', SampleListener())
conn.subscribe('queue_name', 123)
time.sleep(100)
conn.disconnect()
发送消息
def send_to_queue(msg):
conn.send(body=msg, destination='queue_name')
完整代码
# -*-coding:utf-8-*-
import stomp
import time
location_queue = "location"
event_queue = "event"
conn = stomp.Connection([('10.161.2.2', 61613)])
conn.connect(username='admin', passcode='admin', wait=True)
class SampleListener(object):
def on_message(self, headers, message):
print('headers: %s' % headers)
print('message: %s' % message)
def send_to_queue(msg):
conn.send(body=msg, destination=location_queue)
def receive_from_queue():
conn.set_listener('SampleListener', SampleListener())
conn.subscribe(location_queue, 123)
time.sleep(100)
if __name__=='__main__':
send_to_queue('len 123')
receive_from_queue()
conn.disconnect()
输出结果:
headers: {‘content-length’: ‘7’, ‘expires’: ‘0’, ‘destination’: ‘/queue/location’, ‘subscription’: ‘123’, ‘priority’: ‘4’, ‘message-id’: ‘ID:DESKTOP-K8AVGJF-65057-1611900870219-2:45?1:1’, ‘timestamp’: ‘1611906061081’}
message: len 123
版权声明:本文为weixin_39340061原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。