首页 > 解决方案 > 无法从颤振中的 jsonDecoded 变量中提取密钥

问题描述

我是一个新手。我正在尝试从 jsonDecoded 变量中获取所有键。我已经尝试了我所知道的一切来获得这些钥匙。但我不能这样做。

所以我的问题是如何以最简单和最短的方式从 jsonDecoded 值中获取所有键?

这是我的代码:

    Future<String> getData() async {
    var response = await http.get(
        Uri.encodeFull(
            "https://my-json-server.typicode.com/dipcse07/demoJSON/db"),
        headers: {"Accept": "application/json"});

    //print(response.body);
    print('tapped');

    setState(() {
      data = jsonDecode(response.body.toString());

      collegeDataLenght = data['CollegeName1'].length;
      count = collegeDataLenght;
      teachersInfo = data['CollegeName1'];
      print(teachersInfo[0]['avatarImage']);
 });
}

*****需要从data**获得所有密钥

我从我的 api 链接获得的数据是

{
   "CollegeName1":[
      {
         "teacherName":"Md Sazid hasan dip",
         "teacherID":"2345",
         "avatarImage":"url",
         "address":"9/2, shenbari Road, Shanki Para Bazar Mymensingh",
         "status":"Active",
         "joinDate":"date",
         "resignDate":"present"
      },
      {
         "TeacherName":"Talha Azadi",
         "teacherID":"2345",
         "avatarImage":"url",
         "address":"9/2, shenbari Road, Shanki Para Bazar Mymensingh",
         "status":"Active",
         "joinDate":"date",
         "resignDate":"present"
      }
   ],
   "CollegeName2":[
      {
         "teacherName":"Md Sazid hasan dip",
         "teacherID":"2345",
         "avatarImage":"url",
         "address":"9/2, shenbari Road, Shanki Para Bazar Mymensingh",
         "status":"Active",
         "joinDate":"date",
         "resignDate":"present"
      },
      {
         "TeacherName":"Talha Azadi",
         "teacherID":"2345",
         "avatarImage":"url",
         "address":"9/2, shenbari Road, Shanki Para Bazar Mymensingh",
         "status":"Active",
         "joinDate":"date",
         "resignDate":"present"
      }
   ]
}

标签: jsonflutterdartflutter-dependencies

解决方案


您解析的 json 将返回一个您可以使用Map的属性:.keys

void main() {
  final parsedJson = jsonDecode(json) as Map<String, dynamic>;
  print(parsedJson.keys);
}

推荐阅读