Как перечислить данные, возвращаемые из JSON в flutter

#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;