WriteMessage를 WritePreparedMessage로 변경

This commit is contained in:
2024-02-01 13:14:30 +09:00
parent 7b84612b04
commit d5e932de11
2 changed files with 17 additions and 4 deletions

View File

@ -144,7 +144,12 @@ func makeFriends(ctx context.Context, so *Social, conns *connections) (*friends,
}
if exists && srcmap != nil && len(srcmap.lastState) > 0 {
reg.l.c.WriteMessage(websocket.TextMessage, srcmap.lastState)
pmsg, err := websocket.NewPreparedMessage(websocket.TextMessage, srcmap.lastState)
if err != nil {
logger.Println("makeFriends.NewPreparedMessage failed :", err)
} else {
reg.l.c.WritePreparedMessage(pmsg)
}
}
if len(srcmap.listeners) == 0 && len(srcmap.lastState) == 0 {
@ -167,13 +172,15 @@ func makeFriends(ctx context.Context, so *Social, conns *connections) (*friends,
delete(listeners, target)
}
pmsg, _ := websocket.NewPreparedMessage(websocket.TextMessage, srcmap.offline)
for _, l := range srcmap.listeners {
l.c.WriteMessage(websocket.TextMessage, srcmap.offline)
l.c.WritePreparedMessage(pmsg)
}
} else {
srcmap.lastState = []byte(state)
pmsg, _ := websocket.NewPreparedMessage(websocket.TextMessage, srcmap.lastState)
for _, l := range srcmap.listeners {
l.c.WriteMessage(websocket.TextMessage, srcmap.lastState)
l.c.WritePreparedMessage(pmsg)
}
}
} else if len(state) > 0 {