当我想要在nats服务器-js中发布带有golang的msg时,-js与nats服务器有错误,我有这样的错误:nats:没有来自流的响应,我希望将视频发布到nats-server -js,这是我的发布文件:
nc, _ := nats.Connect(nats.DefaultURL)
js, _ := nc.JetStream()
webcam, _ := gocv.VideoCaptureDevice(0)
img := gocv.NewMat()
defer img.Close()
for {
webcam.Read(&img)
_, err := js.Publish("ORDERS", img.ToBytes())
if err != nil {
fmt.Println(err)
}
}我怎样才能解决这个问题?谢谢您的答复。
发布于 2022-03-22 11:22:52
代码的问题是,您忘记添加stream .Your nats服务器在4222 (默认).But上是可连接的,您必须添加一个流来发布和获取数据,下面是go中的代码
_, err = js.AddStream(&nats.StreamConfig{
Name: "orders",
Subjects: []string{"ORDERS.*"},
})请参阅更多文档
发布于 2021-05-10 03:13:26
我认为您需要在发布函数(ORDERS.*)中指定子主题: ORDERS.category,ORDERS.abc,.(非:命令)
下面是我使用NATS流JS Pub/Sub消息的示例:
package main
import (
"fmt"
"github.com/test/global"
"github.com/nats-io/nats.go"
)
func main() {
nc, err := nats.Connect(global.GetURL())
if err != nil {
fmt.Println(err)
}
js, err := nc.JetStream()
if err != nil {
fmt.Println(err)
}
_, err = js.Publish("ORDERS.abc", []byte("abc"))
if err != nil {
fmt.Println(err)
}
}https://stackoverflow.com/questions/67452921
复制相似问题