github.com/gogf/gf@v1.16.9/.example/net/ghttp/server/websocket/echo/main.go (about) 1 package main 2 3 import ( 4 "github.com/gogf/gf/frame/g" 5 "github.com/gogf/gf/net/ghttp" 6 "github.com/gogf/gf/os/gfile" 7 "github.com/gogf/gf/os/glog" 8 ) 9 10 func main() { 11 s := g.Server() 12 s.BindHandler("/ws", func(r *ghttp.Request) { 13 ws, err := r.WebSocket() 14 if err != nil { 15 glog.Error(err) 16 return 17 } 18 for { 19 msgType, msg, err := ws.ReadMessage() 20 if err != nil { 21 return 22 } 23 if err = ws.WriteMessage(msgType, msg); err != nil { 24 return 25 } 26 } 27 }) 28 s.SetServerRoot(gfile.MainPkgPath()) 29 s.SetPort(8199) 30 s.Run() 31 }