}
}
}
-
+struct WebSocketErrorResult last_error={0};
/* 出错回调:仅打印,实际重连策略可在上层统一管理 */
static void uapi_ws_on_error(int client, struct WebSocketErrorResult error)
{
(void)client;
+ if(last_error.errorMessage!=NULL)
+ {
+ free(last_error.errorMessage);
+ last_error.errorMessage=NULL;
+ }
+ last_error.errorCode=error.errorCode;
+ last_error.errorMessage=malloc(strlen(error.errorMessage));
+ memcpy(last_error.errorMessage,error.errorMessage,strlen(error.errorMessage));
+
HAISI_WS_ERROR("WebSocketClientConstructor error: code=%d msg=%s\n", error.errorCode, error.errorMessage);
}
g_ws_running = 1;
g_ws_reconnect_count = 0; /* 启动时从0开始 */
g_ws_connected = WS_STATE_DISCONNECTED; /* 启动时重置连接状态 */
+
+ last_error.errorMessage=NULL;
+ last_error.errorCode=0;
// 注册回调函数结构体
if (callbacks != NULL) {