登录
首页 >  Golang >  Go问答

使用stomp协议在golang中建立连接

来源:stackoverflow

时间:2024-03-09 14:48:19 211浏览 收藏

知识点掌握了,还需要不断练习才能熟练运用。下面golang学习网给大家带来一个Golang开发实战,手把手教大家学习《使用stomp协议在golang中建立连接》,在实现功能的过程中也带大家重新温习相关知识点,温故而知新,回头看看说不定又有不一样的感悟!

问题内容

我尝试在客户端使用 stomp.dial() 函数建立 stomp 连接,但无法连接到服务器。

我正在使用 go-stomp 库。我尝试了不同的方法,例如使用 net.connect 然后 stomp.connect,但它导致了相同的错误。错误就像 读取 tcp: wsarecv: 现有连接被远程主机强制关闭 这里究竟发生了什么以及如何解决它 我的代码看起来像

ticker := time.NewTicker(time.Second * 5)
    defer ticker.Stop()
    for ; ; <-ticker.C {
        st, err := stomp.Dial("tcp", conn.ConfigStr)
        if err != nil {
            log.Println("Stomp connect error", err.Error())
            continue
        }
                log.Println("CONNECTED TO ", conn.ProviderName)

正确答案


我通过这种方式完成了您的请求。
首先,我在端口 61613 上本地运行 stomp 服务器。为了启动它,我使用了这个命令:
docker run -it --rm -p 61613:61613 efrecon/stomp -verbose 5
然后,我使用包 go-stomp 和函数 dial 来连接它:

package main

import "github.com/go-stomp/stomp/v3"

func main() {
    conn, err := stomp.Dial("tcp", "localhost:61613")
    if err != nil {
        panic(err)
    }
    defer func() {
        if err = conn.Disconnect(); err != nil {
            panic(err)
        }
    }()
}

最后,我使用 disconnect 方法关闭连接。
让我知道这是否也适合您。

今天关于《使用stomp协议在golang中建立连接》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>