4990d888 by astaxie

Merge pull request #648 from redaready/develop

update chat example
2 parents 0e278ae3 7075ad8a
...@@ -60,9 +60,9 @@ func (c *connection) readPump() { ...@@ -60,9 +60,9 @@ func (c *connection) readPump() {
60 break 60 break
61 } 61 }
62 switch op { 62 switch op {
63 case websocket.OpPong: 63 case websocket.PongMessage:
64 c.ws.SetReadDeadline(time.Now().Add(readWait)) 64 c.ws.SetReadDeadline(time.Now().Add(readWait))
65 case websocket.OpText: 65 case websocket.TextMessage:
66 message, err := ioutil.ReadAll(r) 66 message, err := ioutil.ReadAll(r)
67 if err != nil { 67 if err != nil {
68 break 68 break
...@@ -89,14 +89,14 @@ func (c *connection) writePump() { ...@@ -89,14 +89,14 @@ func (c *connection) writePump() {
89 select { 89 select {
90 case message, ok := <-c.send: 90 case message, ok := <-c.send:
91 if !ok { 91 if !ok {
92 c.write(websocket.OpClose, []byte{}) 92 c.write(websocket.CloseMessage, []byte{})
93 return 93 return
94 } 94 }
95 if err := c.write(websocket.OpText, message); err != nil { 95 if err := c.write(websocket.TextMessage, message); err != nil {
96 return 96 return
97 } 97 }
98 case <-ticker.C: 98 case <-ticker.C:
99 if err := c.write(websocket.OpPing, []byte{}); err != nil { 99 if err := c.write(websocket.PingMessage, []byte{}); err != nil {
100 return 100 return
101 } 101 }
102 } 102 }
...@@ -149,8 +149,13 @@ type WSController struct { ...@@ -149,8 +149,13 @@ type WSController struct {
149 beego.Controller 149 beego.Controller
150 } 150 }
151 151
152 var upgrader = websocket.Upgrader{
153 ReadBufferSize: 1024,
154 WriteBufferSize: 1024,
155 }
156
152 func (this *WSController) Get() { 157 func (this *WSController) Get() {
153 ws, err := websocket.Upgrade(this.Ctx.ResponseWriter, this.Ctx.Request.Header, nil, 1024, 1024) 158 ws, err := upgrader.Upgrade(this.Ctx.ResponseWriter, this.Ctx.Request,nil)
154 if _, ok := err.(websocket.HandshakeError); ok { 159 if _, ok := err.(websocket.HandshakeError); ok {
155 http.Error(this.Ctx.ResponseWriter, "Not a websocket handshake", 400) 160 http.Error(this.Ctx.ResponseWriter, "Not a websocket handshake", 400)
156 return 161 return
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!