发布于  更新于 

error websocket close 1000 (normal) 解决方案

断开 WebSocket 时出现这个提示 error: websocket: close 1000 (normal),并不是错误,是 WebSocket 正常关闭连接的提示信息。
可以通过进一步判断处理该信息

1
2
3
4
5
6
7
8
9
10
_, message, err := conn.ReadMessage()
if err != nil {
if websocket.IsCloseError(err, websocket.CloseNormalClosure) {
log.Println("WebSocket closed normally:", err)
break
} else if websocket.IsUnexpectedCloseError(err, websocket.CloseGoingAway, websocket.CloseAbnormalClosure) {
log.Printf("Unexpected WebSocket close error: %v\n", err)
} else {
log.Println("WebSocket read error:", err)
}

这样该提示会走到 WebSocket closed normally: