在查看了您的json和代码后,我发现您的json的根不是JsonArray而是JsonObject。您想要获取的清单在里面
['metcheckData']['forecastLocation']['forecast']
在这里,我对正在工作的代码进行了更改..
Future<List<Post>> fetchPosts() async { http.Response response = await http.get( 'http://ws1.metcheck.com/ENGINE/v9_0/json.asp?lat=28&lon=-15.6&lid=62228&Fc=No'); var responseJson = json.depre(response.body); return (responseJson['metcheckData']['forecastLocation']['forecast'] as List) .map((p) => Post.fromJson(p)) .toList();}class Post { final String temperature, rain, humidity, sunrise, sunset, updateDate; Post({ this.temperature, this.rain, this.humidity, this.sunrise, this.sunset, this.updateDate, }); factory Post.fromJson(Map<String, dynamic> json) { return new Post( temperature: json['temperature'].toString(), rain: json['rain'].toString(), humidity: json['humidity'].toString(), sunrise: json['sunrise'].toString(), sunset: json['sunset'].toString(), updateDate: json['utcTime'].toString(), ); }}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)