mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-09-06 16:45:55 +00:00
This commit moves dependency management to use godep and the new experimental vendoring support in Go 1.5. NOTE: You must set `GO15VENDOREXPERIMENT` in your bash environment for vendoring to work properly! See the updated `README` for details. |
||
|---|---|---|
| .. | ||
| examples | ||
| .gitignore | ||
| .travis.yml | ||
| client.go | ||
| client_server_test.go | ||
| conn.go | ||
| conn_test.go | ||
| doc.go | ||
| json.go | ||
| json_test.go | ||
| LICENSE | ||
| README.md | ||
| server.go | ||
| server_test.go | ||
| util.go | ||
Gorilla WebSocket
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 WebSockets Test Suite using the application in the examples/autobahn subdirectory.
Gorilla WebSocket compared with other packages
| gorilla | go.net | |
|---|---|---|
| Protocol support | RFC 6455 | RFC 6455 |
| Limit size of received message | Yes | No |
| Send pings and receive pongs | Yes | No |
| Send close message | Yes | No |
| Read message using io.Reader | Yes | No, see note |
| Write message using io.WriteCloser | Yes | No, see note |
| Encode, decode JSON message | Yes | Yes |
Note: The go.net io.Reader and io.Writer operate across WebSocket message boundaries. Read returns when the input buffer is full or a message boundary is encountered, Each call to Write sends a message. The Gorilla io.Reader and io.WriteCloser operate on a single WebSocket message.