小编Muj*_*ood的帖子

Flutter Dio 发布一个带有数组的对象

我正在尝试使用对象向 api 发布请求“

var params =  {
    "item": "itemx",
    "options": [1,2,3],
    };
    print(params);
    try {
      Response response = await _dio.post(getAddToCartURL,
          queryParameters: params,
          options: Options(headers: {
            HttpHeaders.contentTypeHeader: "application/json",
          }));

    } catch (error, stackTrace) {
      print("Exception occurred: $error  stackTrace: $stackTrace");
      return false;
    }
Run Code Online (Sandbox Code Playgroud)

Dio 将对象发送为:

POST /api/add-to-cart/?item=itemx&options%5B%5D=1&options%5B%5D=2&options%5B%5D=3 
Run Code Online (Sandbox Code Playgroud)

其中 api 将其识别为错误的请求。

我在这里做什么错了?我什至尝试将列表设为 ["1","2","3"],它是一样的。

http dart flutter dio

5
推荐指数
1
解决办法
2万
查看次数

如何遍历 Flutter 中的对象映射

我有这个数据作为json:

{
   "id":1,
   "value":"value x",
   "option":{
      "id":1,
      "name":"option d"
   },
   "attachment":null,
   "price":0
},
{
   "id":2,
   "value":"value y",
   "option":{
      "id":1,
      "name":"option b"
   },
   "attachment":null,
   "price":0
},
Run Code Online (Sandbox Code Playgroud)

我想在将它们与 Option.name 分组后将它们视为 ListView ,因此返回是一个映射为:

Map<String, List<Option>> getGrouped(
      List<Option> options) {
    Map<String, List<Option>> groupByData = groupBy(
        itemVariations, (obj) => (obj as Option).option.name);
    return groupByData;
  }
Run Code Online (Sandbox Code Playgroud)

我不是如何将其视为嵌套的 Text() 小部件?我尝试了很多东西,而且总是:

The argument type 'List<Option>' can't be assigned to the parameter type 'String'.
Run Code Online (Sandbox Code Playgroud)

dart flutter

4
推荐指数
1
解决办法
5796
查看次数

标签 统计

dart ×2

flutter ×2

dio ×1

http ×1