如何解决HTTP请求无法获得完整的数据
我上这堂课:
class Weeks {
final int index;
final int udigree;
final int d_id;
final String activity_a;
final String activity_k;
final String title_a;
final String title_k;
Weeks(this.index,this.udigree,this.d_id,this.activity_a,this.activity_k,this.title_a,this.title_k);
}
我使用了将来的功能来从服务器获取数据:
import 'package:flutter/material.dart';
import 'package:jiyanUquraan/classes/weekly.dart';
import 'package:http/http.dart' as http;
import 'dart:convert';
class Weekly extends StatefulWidget {
@override
_WeeklyState createState() => _WeeklyState();
}
class _WeeklyState extends State<Weekly> {
@override
Widget build(BuildContext context) {
var widthView = MediaQuery.of(context).size.width;
var heightView = MediaQuery.of(context).size.height;
List weekly = [];
Map rData = ModalRoute.of(context).settings.arguments;
var cm_id = rData['current_m_id'];
var u_id = rData['u_id'];
var d_id = rData['d_id'];
var w_id = rData['w_id'];
// Futher Function for Get Data
Future<List> getWeeks() async {
print(cm_id);
print(u_id);
print(w_id);
var url =
'http://10.0.2.2/jiyan/test/api/digrees/weekly_report.php?m_id=$cm_id&u_id=$u_id&w_id=$w_id';
var response = await http.get(url);
var data = jsonDecode(response.body);
print(data);
print(data.length);
for (var x in data) {
Weeks _weeklyReport = Weeks(x['index'],x['udigree'],x['activity_a'],x['activity_k'],x['title_a'],x['title_k'],x['d_id']);
weekly.add(_weeklyReport);
}
return weekly;
}
// End of Get Data
// Create Future Builder
return FutureBuilder(
future: getWeeks(),builder: (context,snapshot) {
if (snapshot.data == null) {
return Center(
child: Text('Loading'),);
} else {
return Center(child: Text('data'));
}
});
// End of Futur Builder
}
}
在打印数据及其长度时,长度是正确的,但数据不完整,如下所示:
由于无法正确获取数据,因此snapshot.data
为空,如何解决此问题?
是否由于数据为库尔德语而发生错误?
解决方法
这个错误在课堂上。 变量d_id和udigree必须为String
{{1}}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。