IOWebSocketChannel.connect handle errors

https://github.com/dart-lang/web_socket_channel/issues/38

 

yes, my workaround is to create a WebSocket directly. Something like:

      final socket = await WebSocket
          .connect(url.toString())
          .timeout(_webSocketConnectionTimeout);
      return IOWebSocketChannel(socket);

Then I wrap this in a try-catch, so I can catch SocketException and TimeoutException and handle these in a way that makes sense for my app.

 

 

 the following way works for me:

      stream = widget.webSocketChannel.stream;
      streamSubscription = stream.listen(
          onData,
          onError: (error) {
             // method calls and what not here
          },
          cancelOnError: true);
    }

I don’t know if it is working because I have a StreamSubscription or whether it simply is an additional step.

 

    原文作者:CrossPython
    原文地址: https://www.cnblogs.com/pythonClub/p/10912514.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞