代码之家  ›  专栏  ›  技术社区  ›  heyr

我是一个新手,我尝试在Android Studio上运行我的项目,但在控制台中出现了一个错误,如:

  •  1
  • heyr  · 技术社区  · 7 年前
      Future<String> getData() async {
    http.Response response = await http.post(
    Uri.encodeFull("https:.........."),
        headers: {
      "Accept" : "application/json"
    
    }
    ,body: {
      "email" : "test123@gmail.com",
      "password" : "password123"
    }
    

    );

    List data = JSON.decode(response.body);
    print(data[0]["access_token"]);
    

    }

    ERROR:    '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'List<dynamic>
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   Günter Zöchbauer    7 年前

    明显地

    JSON.decode(response.body);
    

    返回a Map 不是一个 List

    var data = JSON.decode(response.body);
    

    Map<String, dynamic> data = JSON.decode(response.body);
    

    应该修复您的错误。