Source File
wsutil.go
Belonging Package
github.com/gobwas/ws/wsutil
/*Package wsutil provides utilities for working with WebSocket protocol.Overview:// Read masked text message from peer and check utf8 encoding.header, err := ws.ReadHeader(conn)if err != nil {// handle err}// Prepare to read payload.r := io.LimitReader(conn, header.Length)r = wsutil.NewCipherReader(r, header.Mask)r = wsutil.NewUTF8Reader(r)payload, err := ioutil.ReadAll(r)if err != nil {// handle err}You could get the same behavior using just `wsutil.Reader`:r := wsutil.Reader{Source: conn,CheckUTF8: true,}payload, err := ioutil.ReadAll(r)if err != nil {// handle err}Or even simplest:payload, err := wsutil.ReadClientText(conn)if err != nil {// handle err}Package is also exports tools for buffered writing:// Create buffered writer, that will buffer output bytes and send them as// 128-length fragments (with exception on large writes, see the doc).writer := wsutil.NewWriterSize(conn, ws.StateServerSide, ws.OpText, 128)_, err := io.CopyN(writer, rand.Reader, 100)if err == nil {err = writer.Flush()}if err != nil {// handle error}For more utils and helpers see the documentation.*/package wsutil
![]() |
The pages are generated with Golds v0.8.2. (GOOS=linux GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |