我想要一张地图
我的对象是
class Product{
String id;
String title;
double price;
String image;
bool sc;
Product({@required this.id, @required this.title, @required this.price,
@required this.image, @required this.sc});
factory Product.fromJson(Map<String, dynamic> json) {
return Product(
id: json['id'] as String,
title: json['title'] as String,
price: json['price'] as double,
image: json['image'] as String,
sc: json['sc'] as bool,
);
}
}
http代码在这里
Future<Map<String, List<Product>>> fetchProduct(String url) async{
dio.Dio d = new dio.Dio();
Map<String, dynamic> headers = new Map();
headers['Cookie'] = "JSESSIONID=" + SessionUtils().getSession().toString();
dio.Options options = new dio.Options(
headers: headers,
contentType: 'application/json'
);
dio.Response response = await d.get(url, options: options);
print(response.data);
if(response.statusCode == HttpStatus.ok){
return json.decode(response.data); // need help here
}
}
我得到了错误I/flutter(20085):另一个异常被抛出:类型'_TypeError'不是类型'String'的子类型
谢谢
DIO API参考
在他们的API参考中,他们提到您必须在选项中设置responseType。默认值是JSON,因此您可以直接返回响应。数据,因为它已被反序列化到映射中。
另一种选择可能是:
responseType = responseType.string;
在dio选项,然后你会得到response.data的字符串形式,你可以手动解码。
我从来没有使用过DIO,但根据API参考,这似乎是个问题,因为错误表明json.decode()期望一个字符串,但得到了一个映射,所以也许response.data是动态的,数据类型根据指定的响应类型。给它一个尝试!
你好,我正在做一个api调用,在那里我得到了一系列的横幅。我正在犯错误- 横幅。飞奔 横幅。飞奔 api_base_助手。飞奔 得到你的横幅。飞奔
我有一个问题,因为2小时。我有这个错误,我看到了更多的主题,但我不能解决它。 消息:_TypeError(类型列表不是类型映射的子类型)颤动 我的模型: 我的主题屏幕: 我尝试了更多的教程和不同的主题,但我有相同的错误。。。 非常感谢。
因此,我创建了一个应用程序,通过api读取数据,并尝试解析JSON api 这是我的错误截图 我试着把它改成一个列表,但它仍然读取一个错误 这是我的密码大象。飞奔 如何纠正此错误?请帮忙
我试图获得用户信息后,用户输入电子邮件和密码。我使用的api会返回我用户的额外信息,所以我尝试从中获取这些信息。 我试图解析这个json: 这些是我的模型: 这是我发送电子邮件、密码和获取用户数据的部分: 这是给我错误的部分 我打印了响应体,它给出了我想要的字符串,但是jsonDecode返回了一个列表,所以我不能使用它。我怎样才能解决这个问题?提前谢谢。
我目前正在构建一个通过api读取数据的应用程序,我正在尝试从JSON占位符解析JSON api。 我为用户(users_future_model.dart)做了一个模型类: 这是将json读入小部件的main.dart: 这是我试图阅读的JSON信息,尽管它只是其中的一小部分: 我当前遇到的错误是: 如何纠正此错误?
我试图显示用户图像URL在CircleAvatar();它显示一个空错误,即使我已经提供了它。还是我做错了? 首先,我调用Auth方法和设置图像字符串img, 然后在initstate中实例化 然后把它放在抽屉里()