@@ -100,21 +100,24 @@ func (s *ApiService) CpHandler(w http.ResponseWriter, r *http.Request) {
100100 msgType , message , err := ws .ReadMessage ()
101101 if err != nil {
102102 log .ErrorContext (ctx , "failed to read cp request" , "error" , err )
103- ws .WriteMessage (websocket .TextMessage , []byte (fmt .Sprintf (`{"type":"error","message":"failed to read request: %v"}` , err )))
103+ errMsg , _ := json .Marshal (CpError {Type : "error" , Message : fmt .Sprintf ("failed to read request: %v" , err )})
104+ ws .WriteMessage (websocket .TextMessage , errMsg )
104105 return
105106 }
106107
107108 if msgType != websocket .TextMessage {
108109 log .ErrorContext (ctx , "expected text message with JSON request" , "type" , msgType )
109- ws .WriteMessage (websocket .TextMessage , []byte (`{"type":"error","message":"first message must be JSON text"}` ))
110+ errMsg , _ := json .Marshal (CpError {Type : "error" , Message : "first message must be JSON text" })
111+ ws .WriteMessage (websocket .TextMessage , errMsg )
110112 return
111113 }
112114
113115 // Parse JSON request
114116 var cpReq CpRequest
115117 if err := json .Unmarshal (message , & cpReq ); err != nil {
116118 log .ErrorContext (ctx , "invalid JSON request" , "error" , err )
117- ws .WriteMessage (websocket .TextMessage , []byte (fmt .Sprintf (`{"type":"error","message":"invalid JSON: %v"}` , err )))
119+ errMsg , _ := json .Marshal (CpError {Type : "error" , Message : fmt .Sprintf ("invalid JSON: %v" , err )})
120+ ws .WriteMessage (websocket .TextMessage , errMsg )
118121 return
119122 }
120123
0 commit comments