gorilla/websocket


A fast, well-tested and widely used WebSocket implementation for Go.

License: BSD-2-Clause

Language: Go

Keywords: go, golang, gorilla, gorilla-websocket, websocket


Gorilla WebSocket

Gorilla WebSocket is a Go implementation of the WebSocket protocol.

Build Status GoDoc

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

github.com/gorilla golang.org/x/net
RFC 6455 Features
Passes Autobahn Test Suite Yes No
Receive fragmented message Yes No, see note 1
Send close message Yes No
Send pings and receive pongs Yes No
Get the type of a received data message Yes Yes, see note 2
Other Features
Compression Extensions Experimental No
Read message using io.Reader Yes No, see note 3
Write message using io.WriteCloser Yes No, see note 3

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.

Project Statistics

Sourcerank 12
Repository Size 368 KB
Stars 10,430
Forks 1,816
Watchers 360
Open issues 30
Dependencies 0
Contributors 31
Tags 3
Created
Last updated
Last pushed

Top Contributors See all

Gary Burd Joachim Bauch Craig Jackson Attila Oláh Kamil Kisiel Jean de Klerk Mark Wolfe Peter Waller Eric Urban Jean-Christophe Bohin Mark Dain Mike Li Simon Eisenmann Matt Silverlock Artyom Pervukhin gansidui Craig Jellick Maxime Heckel Sam Broughton Seiichi KONDO

Packages Referencing this Repo

github.com/Gorilla/websocket
A fast, well-tested and widely used WebSocket implementation for Go.
Latest release v1.2.0 - Published - 10.4K stars
github.com/gorilla/websocket/examples/command
A fast, well-tested and widely used WebSocket implementation for Go.
Latest release v1.2.0 - Published - 10.4K stars
github.com/gorilla/websocket/examples/filewatch
A fast, well-tested and widely used WebSocket implementation for Go.
Latest release v1.2.0 - Published - 10.4K stars
github.com/gorilla/websocket/examples/chat
A fast, well-tested and widely used WebSocket implementation for Go.
Latest release v1.2.0 - Published - 10.4K stars
github.com/gorilla/websocket/examples/autobahn
A fast, well-tested and widely used WebSocket implementation for Go.
Latest release v1.2.0 - Published - 10.4K stars
github.com/gorilla/websocket
A fast, well-tested and widely used WebSocket implementation for Go.
Latest release v1.2.0 - Published - 10.4K stars

Recent Tags See all

v1.2.0 June 20, 2017
v1.1.0 December 16, 2016
v1.0.0 April 28, 2016

Interesting Forks See all

leavengood/websocket
A WebSocket implementation for Go.
Go - Last pushed - 61 stars - 5 forks
btcsuite/websocket
A WebSocket implementation for Go.
Go - BSD-2-Clause - Last pushed - 6 stars - 13 forks
iris-contrib/websocket
A WebSocket implementation for Go.
Go - BSD-2-Clause - Last pushed - 4 stars - 2 forks
gofrs/websocket
A WebSocket implementation for Go.
Go - BSD-2-Clause - Last pushed - 3 stars
walmartlabs/websocket
A WebSocket implementation for Go.
Go - Last pushed - 2 stars

Something wrong with this page? Make a suggestion

Last synced: 2016-05-27 15:01:25 UTC

Login to resync this repository