Golang websocket client读取数据
Golang既可以写websocket的server端也可以写websocket的client端,前者网上的资料很多后者甚少,今天遇到写client的需求,在此做个总结。 测试地址:火币网 websocket包: golang.org/x/net/websocket 建立连接。连接成功建立后,client和server均可以随时往数据通道里写数据同时也可以从中读取数据。 var wsurl = "wss://api.huobi.pro/ws" var origin = "http://api.huobi.pro/" ws , err := websocket . Dial ( wsurl , "" , origin ) if err != nil { panic ( err ) } 写数据。在通道已建立的前提下,写数据操作通过一行代码即可完成: func sendMessage ( data [ ] bytes ) { ws . Write ( msg ) } 3.1 读数据。最简单的方法是调用 func (ws *Conn) Read(msg []byte) (n int, err error) 方法,定义一个用来接收数据的 []byte 数组当作参数传入,但是由于不知道server发来的数据长度,所以一般是定义一个足够大的字节 []byte 数组