首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Stomp.py如何从侦听器返回消息

Stomp.py如何从侦听器返回消息
EN

Stack Overflow用户
提问于 2014-04-15 07:34:03
回答 1查看 5K关注 0票数 3

我已经读过这个主题:Stomp.py return message from listener

但我仍然不明白它是如何工作的,为什么无法直接从stomp对象或侦听器中检索消息?

如果我可以通过send方法发送消息,如果我可以使用on_message侦听器方法接收消息,为什么我不能将该消息返回到我的原始函数,这样我就可以将它返回到前端了?

所以如果我有:

代码语言:javascript
复制
class MyListener(object):
    def on_error(self, headers, message):
        print '>>> ' + message
    def on_message(self, headers, message):
        print '>>> ' + message

如何从on_message方法返回消息?

或者我能在conn.subscribe(.)之后做些什么吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-10 01:39:11

好吧,我自己找到了一条路。您所要做的就是对侦听器类进行轻微的更改:

代码语言:javascript
复制
class MyListener(object):
    msg_list = []

    def __init__(self):
        self.msg_list = []

    def on_error(self, headers, message):
        self.msg_list.append('(ERROR) ' + message)

    def on_message(self, headers, message):
        self.msg_list.append(message)

在代码中,您使用stomp.py:

代码语言:javascript
复制
conn = stomp.Connection()
lst = MyListener()
conn.set_listener('', lst)
conn.start()
conn.connect()
conn.subscribe(destination='/queue/test', id=1, ack='auto')
time.sleep(2)
messages = lst.msg_list
conn.disconnect()
return render(request, 'template.html', {'messages': messages})
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23077284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档