title: GO Websocket send all clients a message
body: <p>Everything works fine with this code (shortened it for better reading).</p>
  
  <p>When <code>Client1</code> sends a request to the Server, the Server responses to him instantly. But, the other clients can not see the response message.</p>
  
  <p>So I want to make it go further: When a client sends a request to the server, the server will response to all clients so that all clients can see the message.</p>
  
  <p>How can I do that? Any examples or nice tutorials for beginners?</p>
  
  <p>Thanks in advance!</p>
  
  <p>Server:</p>
  
  <pre><code>import (
          "github.com/gorilla/websocket"
         )
  
  func main() {
      http.Handle("/server", websocket.Handler(echoHandler)) 
  }
  
  func echoHandler(ws *websocket.Conn) {
      conn, err := upgrader.Upgrade(w, r, nil) 
      if err != nil { 
        return
      }
      for {
        messageType, p, err := conn.ReadMessage() 
        if err != nil {
          return
        }
  
        print_binary(p) // simple print of the message
  
        err = conn.WriteMessage(messageType, p);
        if err != nil {
          return
        }
      }
  }
  </code></pre>