当前位置: 首页 > 知识库问答 >
问题:

如何修复_castError列表不是类型转换中字符串类型的子类型

桑思远
2023-03-14

我得到这个错误列表是不是一个类型的子类型字符串在类型铸造,目前我正在发送的形式数据在体内,因为服务器不接受任何原始请求

Future orderConfirmation(CartConfirmationModel cd, orderNotifyData) {
    var dataMap = new Map<dynamic, dynamic>();

    var orders = [];

    for (var item in orderNotifyData.items) {
      var productMap = {
        'product_id': item.productId,
        'qty': item.qty,
      };
      orders.add(productMap);
    }

    dataMap['customer_id'] = cd.customerId;

    **//dataMap['orderLine'] = orders; // if i add orders to dataMap i get this error**

    return http
        .post(API + '/orders/create', headers: key, body: dataMap)
        .then((data) {
      if (data.statusCode == 200) {
        final jsonData = json.decode(data.body);

        return jsonData['Result'];
      }
    });
  }

//服务器响应,表示服务器成功接收并返回状态200

Map (2 items)
1:"Result" -> Map (1 item)
 key:"Code"
 value:200
0:"Code" -> 200

共有1个答案

冯玮
2023-03-14

您没有对请求的主体进行编码。

 Future orderConfirmation(CartConfirmationModel cd, orderNotifyData) {
    var dataMap = new Map<dynamic, dynamic>();
    var orders = [];
    for (var item in orderNotifyData.items) {
      var productMap = {
        'product_id': item.productId,
        'qty': item.qty,
      };
      orders.add(productMap);
    }

    dataMap['customer_id'] = cd.customerId;

    dataMap['orderLine'] = orders;

    return http
        .post(API + '/orders/create', headers: key, body: jsonEncode(dataMap))
        .then((data) {
      if (data.statusCode == 200) {
        final jsonData = json.decode(data.body);

        return jsonData['Result'];
      }
    });
  }
 类似资料:
  • 我试图创建动态下拉,其值是从使用微服务的查找表之一填充,但我已经尝试了许多方式相同,到目前为止,我还没有成功地使其工作。 下面的代码用于调用webservice 这是我的对象类型 仅用于显示目前运行的以下代码 我做了什么我尝试调用webservice在多种方式调用它,尝试铸造服务响应直接使用JSON字符串响应和可能的事情我尝试过。 你能在这里帮忙吗?我们将不胜感激。

  • 我想从Firestore获取会议并将其映射到以下模型中: 从Firestore获取文档,然后在iterable上调用< code>fromJson,但会引发一个异常: 当我进入生成的< code>meeting.g.dart时,就是这一行导致了错误 为了解决此问题,我尝试在模型中从 DateTime 更改为 Timestamp,但随后显示以下生成错误: 你能告诉我你如何解决这个问题吗?有没有另一种

  • 我在尝试使用JSON_serializable序列化从internet获取的复杂JSON并使用FutureProvider将它们连接在一起时遇到了这个问题。这是json文件, 这是包含序列化类的代码, 获取json文件并将其转换为dart的未来提供者, 这是基因编码, 这是转换后的json文件显示的代码 当我试着运行这个项目时,我遇到了这个错误 i/flutter(23347): type'Lis

  • 我想从listofTaskNotApprove类更新图像,它将documentsnapshot的对象传递到EditTaskNotApprove。在我更新图像之前,我需要显示特定的图像,用户将从列表中选择特定信息。问题是如何在新屏幕上显示图像的当前索引? ListofTasKnot接受类。 这里是EditTask类,我需要显示用户选择的图像的当前索引。 更新图像需要显示的图像这是当用户想要更新Lis

  • 我取一些产品从服务器,但我得到了一个错误,说明另一个例外被抛出:不正确使用家长DataWidget。同步快照 这是我的ProductModel课程 这是主页 这是JsonResorts

  • 当我运行我的代码时,它返回了错误:类型“Future”不是类型转换中“List”类型的子类型。我该如何修复它?它是在我从Firebase获取数据之前匹配引擎运行的?我试图将wait添加到List demoProfiles=getdata()作为wait List;但它返回错误。我真的是新手,这个问题已经困扰了我一整天。请帮帮我