Fix: ws reg error send err msg

pull/21/head
zijiren233 2 years ago
parent 994b8aa477
commit 0a3a7b11b5

@ -37,16 +37,18 @@ func NewWSMessageHandler(u *room.User) func(c *websocket.Conn) error {
client, err := u.RegClient(c) client, err := u.RegClient(c)
if err != nil { if err != nil {
log.Errorf("ws: register client error: %v", err) log.Errorf("ws: register client error: %v", err)
b, err := json.Marshal(room.ElementMessage{ wc, err2 := c.NextWriter(websocket.BinaryMessage)
if err2 != nil {
return err2
}
defer wc.Close()
em := room.ElementMessage{
ElementMessage: &pb.ElementMessage{ ElementMessage: &pb.ElementMessage{
Type: pb.ElementMessageType_ERROR, Type: pb.ElementMessageType_ERROR,
Message: err.Error(), Message: err.Error(),
}, },
})
if err != nil {
return err
} }
return c.WriteMessage(websocket.TextMessage, b) return em.Encode(wc)
} }
log.Infof("ws: room %s user %s connected", u.Room().Id(), u.Name()) log.Infof("ws: room %s user %s connected", u.Room().Id(), u.Name())
defer func() { defer func() {

Loading…
Cancel
Save