使用 stompngo 客户端订阅主题
Topic subscription using stompngo client
我正在使用 stompngo 客户端库连接并订阅 ActiveMQ 中发布为 STOMP 的主题。
我没有看到将 Destination 提到 TOPIC 的规定,而且似乎默认情况下订阅在 ActiveMQ 中注册为 QUEUE。具体指向一个TOPIC需要什么具体步骤吗?
func subscribe() { netconn, err := net.Dial("tcp", "localhost:61613")
check(err)
h := stompngo.Headers{stompngo.HK_ACCEPT_VERSION, "1.1",
stompngo.HK_HOST, "localhost"}
conn, err := stompngo.Connect(netconn, h)
check(err)
subHead := stompngo.Headers{stompngo.HK_DESTINATION, "MY_TOPIC"}
sub, err := conn.Subscribe(subHead)
check(err)
for {
msg := <-sub
log.Println("Message : ", msg.Message.BodyString())
}
}
你可以通过这个试试:
h := stompngo.Headers{stompngo.HK_DESTINATION, "/topic/MY_TOPIC"}
来源 - https://github.com/gmallard/stompngo/blob/dev/send.go#L35
我正在使用 stompngo 客户端库连接并订阅 ActiveMQ 中发布为 STOMP 的主题。 我没有看到将 Destination 提到 TOPIC 的规定,而且似乎默认情况下订阅在 ActiveMQ 中注册为 QUEUE。具体指向一个TOPIC需要什么具体步骤吗?
func subscribe() { netconn, err := net.Dial("tcp", "localhost:61613")
check(err)
h := stompngo.Headers{stompngo.HK_ACCEPT_VERSION, "1.1",
stompngo.HK_HOST, "localhost"}
conn, err := stompngo.Connect(netconn, h)
check(err)
subHead := stompngo.Headers{stompngo.HK_DESTINATION, "MY_TOPIC"}
sub, err := conn.Subscribe(subHead)
check(err)
for {
msg := <-sub
log.Println("Message : ", msg.Message.BodyString())
}
}
你可以通过这个试试:
h := stompngo.Headers{stompngo.HK_DESTINATION, "/topic/MY_TOPIC"}
来源 - https://github.com/gmallard/stompngo/blob/dev/send.go#L35