我无法使用stompest和python将持久性消息发送到AMQ队列..不知道要使用哪个头? 以下是源代码
from stompest.config import StompConfig
from stompest.sync import Stomp
import os
CONFIG = StompConfig('tcp://localhost:61613')
QUEUE = '/queue/myQueue'
if __name__ == '__main__':
try:
client = Stomp(CONFIG)
client.connect({'login':'#####','passcode':'#####'})
for i in range(10):
msg="Test Message" +str(i)
client.send(QUEUE,msg)
client.disconnect()
except Exception,e:
print e
答案 0 :(得分:2)
如果你坚持不懈,你可能还想在交易中向你发送消息。
with client.transaction(receipt='important') as transaction:
client.send(QUEUE, 'test',{'persistent':'true', StompSpec.TRANSACTION_HEADER: transaction})
这样,您可以确保队列中的所有消息都不会结束。如果事务块中出现错误,则消息将不会提交到队列。读取消息也是如此。
答案 1 :(得分:0)
您必须将发送行更改为:
client.send(QUEUE,msg, headers={'persistent' :'true'})