loadJsonNetwork function
Loads a JSON object from an HTTP endpoint.
Returns an empty map when request or decoding fails.
Implementation
Future<Map<String, dynamic>> loadJsonNetwork(String url) async {
try {
final response = await http.get(Uri.parse(url));
if (response.statusCode == 200) {
return jsonDecode(response.body) as Map<String, dynamic>;
}
throw Exception('HTTP ${response.statusCode}');
} on FormatException catch (e) {
debugPrint('loadJsonNetwork malformed JSON from $url: $e');
return <String, dynamic>{};
} catch (e) {
debugPrint('loadJsonNetwork error from $url: $e');
return <String, dynamic>{};
}
}