我有这样的代码:
package main
import (
"fmt"
"github.com/nats-io/nats.go"
)
func main() {
nc, _ := nats.Connect(nats.DefaultURL)
for {
nc.Subscribe("request", func(m *nats.Msg) {
fmt.Printf("Received a message: %s\n", string(m.Data))
m.Respond([]byte("Received"))
})
}
}
我尝试做的是接收一条消息,并在收到一条消息后发送对消息的回复,如示例所示。
但是,上面的代码存在一些问题。当我添加for {
到代码中时,它会重复相同的消息,直到收到新消息。
使用 NATS 连续接收消息的正确实现是什么?(不回复收到的消息)