通过果朗的websocket编写客户端



我正在编写一个客户端,它拨打一个websocket,等待接收信息。我可以成功地拨打websocket,但我不知道如何使用"golang.org/x/net/websocket"包实现某种异步回调。这可能吗,或者我应该使用Gorilla软件包吗?

使用for循环读取使用Gorilla包的websocket:

for {
    _, message, err := c.ReadMessage()
    if err != nil {
        log.Println("read:", err)
        c.Close()
        break
    }
    handleMessage(message)
}

在goroutine中运行循环以使其异步:

go func() {
    for {
        _, message, err := c.ReadMessage()
        if err != nil {
            log.Println("read:", err)
            c.Close()
            break
        }
        handleMessage(message)
    }
}()

相关内容

  • 没有找到相关文章

最新更新