// 结束时触发 onDone(){ // 可在这里进行重连。 onConnect(); // 重连 } // 收到Error时触发,cancelOnError:遇到第一个Error时是否取消订阅,默认为false。cancelOnError 为true时,出现onError时,onDone将不会回调 onError(err){ _channel.sink.close();//关闭连接通道 } // 收到数据时触发 onData(message){ } @override void dispose() { _channel.sink.close(); //关闭连接通道 super.dispose(); } IOWebSocketChannel_channel; // 建立连接 void onConnect() { _channel =IOWebSocketChannel.connect("ws://192.168.43.75:8088/wsresult?${token}"); _channel.sink.add(jsonEncode({"type":"heart"},),); // 发Json数据 _channel.stream.listen(this.onData, onError: onError, onDone: onDone); }