Flutter圈子Flutter 案例学习

Flutter web_socket 断线重连

2021-08-07  本文已影响0人  孤街酒客0911

// 结束时触发

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);

}

上一篇 下一篇

猜你喜欢

热点阅读