作者 yangfu

ws

  1 +package websocket
  2 +
  3 +import (
  4 + "github.com/gorilla/websocket"
  5 + "gitlab.fjmaimaimai.com/mmm-go/gocomm/pkg/mybeego"
  6 + ws "gitlab.fjmaimaimai.com/mmm-go/gocomm/pkg/websocket"
  7 + "gitlab.fjmaimaimai.com/mmm-go/gocomm/pkg/log"
  8 + "net/http"
  9 + "strconv"
  10 +)
  11 +
  12 +var upgrader = websocket.Upgrader{}
  13 +
  14 +func Upgrage(w http.ResponseWriter, r *http.Request) {
  15 + requestHead := &mybeego.RequestHead{}
  16 + requestHead.Uid, _ = strconv.ParseInt(r.Header.Get("uid"), 10, 64)
  17 + requestHead.AppId, _ = strconv.Atoi(r.Header.Get("appid"))
  18 + requestHead.Token = r.Header.Get("token")
  19 + conn, err := upgrader.Upgrade(w, r, nil)
  20 + if err != nil {
  21 + log.Fatal(err)
  22 + }
  23 + wsConn := ws.NewWebsocketConnection(conn, requestHead, WsOnReceive)
  24 + wsConn.Serve()
  25 +}
  26 +
  27 +func WsOnReceive(data []byte) *mybeego.Message {
  28 + return mybeego.NewMessage(0)
  29 +}