csv - Http请求未完成

标签 csv http flutter dart

我正在尝试从互联网上的csv文件获取数据:
https://covid.ourworldindata.org/data/owid-covid-data.csv
如果单击它,您可能已经注意到它会自动下载,我认为这是问题所在。
当我在dart中使用http library来获取此数据时,一开始我只得到了其中的一小部分。 response.statusCode仍然等于200,其他所有内容均按预期工作。
我认为自动下载是问题的一部分,但我不确定如何解决
这是代码:

import 'package:http/http.dart' as http;
...
main(){
  String url = 'https://covid.ourworldindata.org/data/owid-covid-data.csv';
  http.Response response = await http.get(url);
  print(response.body);
}

最佳答案

这是json格式的示例:

  Future<Response> fetchData() async
  {
   return await http.get("https://covid.ourworldindata.org/data/owid-covid-data.json");
  }
然后在build()方法中:
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text(widget.title),
        ),
        body: Center(
          child: FutureBuilder(
            future: fetchData(),
            builder: (context, AsyncSnapshot<Response> snapshot) {
              if (snapshot.hasData) {
                Map<String, dynamic> map =
                    Map.from(jsonDecode(snapshot.data.body));
                return Text(map["LBN"]["continent"]);
              } else if (snapshot.hasError) {
                return Text("${snapshot.error}");
              }

              // By default, show a loading spinner.
              return CircularProgressIndicator();
            },
          ), // This trailing comma makes auto-formatting nicer for build methods.
        ));
  }

关于csv - Http请求未完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63149216/

相关文章:

android - Flutter:PlatformException(错误,无法找到包含 <path> 的已配置根目录,null)

flutter - PickedImage 为空

flutter - 如何在小部件方法中将变量作为状态传递?

postgresql -\复制权限在将 CSV 导入 Ubuntu 上的 Postgres 时被拒绝

javascript - D3.js 无法读取未定义的属性 'length'

c# - 如何正确编码二进制数据以通过 REST api PUT 调用发送

javascript - 在 phantomjs 中奇怪地解析了 POST 参数

javascript - 如何: Javascript files always up-to-date

python-3.x - 是否有办法刷新 csv 文件的数据而不实际关闭它?

python - 在 Python 中创建一个 utf-8 csv 文件