// This example demonstrates a trivial client. func ExampleDial() { origin := "http://localhost/" url := "ws://localhost:12345/ws" ws, err := websocket.Dial(url, "", origin) if err != nil { log.Fatal(err) } if _, err := ws.Write([]byte("hello, world!\n")); err != nil { log.Fatal(err) } var msg = make([]byte, 512) var n int if n, err = ws.Read(msg); err != nil { log.Fatal(err) } fmt.Printf("Received: %s.\n", msg[:n]) }
func dialWebsocket(proto string, u *url.URL) (MsgConn, error) { ws := &wsConn{} switch proto { case ProtocolJSON: ws.codec = websocket.JSON case ProtocolMsgPack: ws.codec = msgpackCodec default: return nil, errors.New(`invalid protocol "` + proto + `"`) } conn, err := websocket.Dial(u.String(), "", "https://"+u.Host) if err != nil { return nil, err } ws.conn = conn return ws, nil }