Creating a WebSocket server
The WebSocket protocol is a computer communications protocol that provides full-duplex (transmission of data in two directions simultaneously) communication channels over a single TCP connection. The WebSocket protocol is defined in RFC 6455 (https://tools.ietf.org/html/rfc6455) and uses ws://
and wss://
instead of http://
and https://
, respectively. Therefore, the client should begin a WebSocket connection by using a URL that starts with ws://
.
In this section, we are going to develop a small yet fully functional WebSocket server using the gorilla/websocket
(https://github.com/gorilla/websocket) module. The server implements the Echo service, which means that it automatically returns its input to the client.
The golang.org/x/net/websocket
package offers another way of developing WebSocket clients and servers. However, according to its documentation, golang.org/x/net/websocket lacks some features and it is advised that you use https://godoc.org...