Flutter: Обработка FormatException: Неожиданный конец ввода - PullRequest
0 голосов
/ 26 января 2020

Я хотел бы обработать следующее исключение в моем коде для случая, когда соединение разрывается в середине ответа или до того, как ответ был сделан (когда он ничего не возвращает).

E/flutter (17113): [ERROR:flutter/shell/common/shell.cc(199)] Dart Error: Unhandled exception:
E/flutter (17113): FormatException: Unexpected end of input
E/flutter (17113): #0      _ChunkedJsonParser.fail (dart:convert-patch/convert_patch.dart:1394:5)
E/flutter (17113): #1      _ChunkedJsonParser.close (dart:convert-patch/convert_patch.dart:512:7)
E/flutter (17113): #2      _JsonStringDecoderSink.close (dart:convert-patch/convert_patch.dart:1489:13)
E/flutter (17113): #3      _ConverterStreamEventSink.close (dart:convert/chunked_conversion.dart:82:18)
E/flutter (17113): #4      _SinkTransformerStreamSubscription._handleDone (dart:async/stream_transformers.dart:143:24)
E/flutter (17113): #5      _RootZone.runGuarded (dart:async/zone.dart:1304:10)
...

В настоящее время я использую следующий код, но он не перехватывает исключение:

    var finStream;
    try {
      finStream = retStream.transform(utf8.decoder).transform(json.decoder);
    } catch (e) {
      print("Network Error!");
      print(e);
      return {"Successful": false};
    }
...