我开始学习歌朗。我有一个项目,我需要通过WebSocket连接从API中流一些数据,然后在控制台中打印出来。
我不明白的是-我有一个URL,所以我可以在上面提出一个请求(通过net/http包),但是我如何将它升级到WebSocket呢?
我能只用纯歌朗做吗?我在网上找不到合适的信息。所有的例子都使用JS,或者让它变得太复杂(比如构建一些我不想要的应用程序,而且由于它的复杂性而不能继续使用)。
发布于 2022-04-28 08:59:42
我抓住你了。WebSocket有客户端和服务器端。大多数情况下,人们需要在浏览器中运行客户端。大猩猩的websocket实现支持客户端和服务器。你可以用它拨你的服务器。下面是一个示例代码。
package main
import (
"fmt"
"github.com/gorilla/websocket"
)
func main() {
ws, _, err := websocket.DefaultDialer.Dial("ws[s]://localhost/path?query", nil)
if err != nil {
panic(err)
}
defer ws.Close()
for {
// Read a message from websocket connection
_, msg, err := ws.ReadMessage()
if err != nil {
return
}
fmt.Println(string(msg))
// uncomment below if you need send message to remote server
//if err = ws.WriteMessage(websocket.TextMessage, msg); err != nil {
// return
//}
}
}下面是已完成的简单客户机和服务器示例:https://github.com/gorilla/websocket/tree/master/examples/echo
https://stackoverflow.com/questions/60096845
复制相似问题