Clone this repo:
  1. b65e629 build: clean up go.sum (#584) by Matt Silverlock · 5 months ago master v1.4.2
  2. 8c288dc docs: Fix typo. (#568) by Jon Gillham · 5 months ago
  3. d113569 Duration order consistency when multiplying number by time unit (#570) by Maxim Fominykh · 5 months ago
  4. 81cef7d echo example: handle received messages as text, not HTML (#563) by Sry Back I · 5 months ago
  5. 015e196 Use empty struct to protect writing (#566) by ferhat elmas · 5 months ago

Gorilla WebSocket

GoDoc CircleCI

Gorilla WebSocket is a Go implementation of the WebSocket protocol.

Documentation

Status

The Gorilla WebSocket package provides a complete and tested implementation of the WebSocket protocol. The package API is stable.

Installation

go get github.com/gorilla/websocket

Protocol Compliance

The Gorilla WebSocket package passes the server tests in the Autobahn Test Suite using the application in the examples/autobahn subdirectory.

Gorilla WebSocket compared with other packages

Notes:

  1. Large messages are fragmented in Chrome's new WebSocket implementation.
  2. The application can get the type of a received data message by implementing a Codec marshal function.
  3. The go.net io.Reader and io.Writer operate across WebSocket frame boundaries. Read returns when the input buffer is full or a frame boundary is encountered. Each call to Write sends a single frame message. The Gorilla io.Reader and io.WriteCloser operate on a single WebSocket message.