Я хотел бы обработать следующее исключение в моем коде для случая, когда соединение разрывается в середине ответа или до того, как ответ был сделан (когда он ничего не возвращает).
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};
}