Files
push-server/cmd/test-client/main.go

44 lines
847 B
Go

package main
import (
"context"
"log"
"github.com/coder/websocket"
"github.com/coder/websocket/wsjson"
)
func main() {
log.Println("This is a test client.")
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
c, _, err := websocket.Dial(ctx, "ws://localhost:8080/ws", nil)
if err != nil {
log.Fatal("dial error:", err)
return
}
defer c.CloseNow()
err = wsjson.Write(ctx, c, "Hello, WebSocket server!")
if err != nil {
log.Fatal("write error:", err)
return
}
typ, msg, err := c.Read(ctx)
if err != nil {
log.Println("read error:", err)
return
}
switch typ {
case websocket.MessageText:
log.Printf("Received text message: %s", string(msg))
case websocket.MessageBinary:
log.Printf("Received binary message: %v", msg)
}
c.Close(websocket.StatusNormalClosure, "test client finished")
}