尝试通过github.com/go-stomp/stomp
库连接到AWS上的ActiveMQ实例。
以下代码引发invalid command
错误:
func (s *STOMP) Init() error {
netConn, err := stomp.Dial("tcp", "host:61614")
if err != nil {
return errors.Wrap(err, "dial to server")
}
s.conn = netConn
return nil
}
答案 0 :(得分:1)
AmazonMQ使用stomp + ssl原型,因此连接到它的正确方法是首先自行设置TLS连接:
func (s *STOMP) Init() error {
netConn, err := tls.Dial("tcp", "host:61614", &tls.Config{})
if err != nil {
return errors.Wrap(err, "dial tls")
}
stompConn, err := stomp.Connect(netConn)
if err != nil {
return errors.Wrap(err, "dial to server")
}
s.conn = stompConn
return nil
}