#json #flutter #dart
Вопрос:
Мой вызов API:
Future<List<SongData>> _getMetadata() async {
Uri url = Uri.parse('https://radioactivefm.gr/live/api/getCoverJson.php');
final response = await http.get(url);
var data = jsonDecode(response.body);
print('data: $data');
return SongData.fromJson(data);
}
Я не могу объявить это таким образом, показывая, что значение типа «SongData» не может быть возвращено из метода «_getMetadata», потому что оно имеет тип возврата » Будущее<Список>
Ответ №1:
Future<List<SongData>> _getMetadata () async {
Uri url = Uri.parse('https://radioactivefm.gr/live/api/getCoverJson.php');
final response = await http.get(url);
var data = jsonDecode(response.body);
print('data: $data');
return data.map((e) => SongData.fromJson(e)).toList();
}
Попробуйте это и, пожалуйста, поделитесь формой полученных данных.
Комментарии:
1. Решено! Список<SongData> песни = data.map((e) =<SongData>> SongData.FromJSON(e)).ToList(); печать(‘данные: $данные’); возврат песен; добавьте это
Ответ №2:
Просто добавьте эту строку под
List<SongData> songs = data.map((e) =>SongData.fromJson(e)).toList();
print('data: $data');
return songs;