Flutter/Dart:将列表中的项目添加到 JSON 正文

Flutter/ Dart: Add items from list to JSON body

我有一种情况:我需要使用他们的 Rest API(从我的 flutter 应用程序)将图像推送到 Airtable,如下所示:

POST https://api.airtable.com/v0/<base>/<table name> \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
  "fields": {
    "Pictures": [
      {
        "url": "imageUrl1"
      },
      {
        "url": "imageUrl2"
      }
    ],
    "Variation": "Original"
  }
}'

我有一个 url 列表,它是在将图像上传到云存储后生成的,它看起来像这样:

imageURL = [imageUrl1, imageUrl2, imageUrl3, ... ]

我需要帮助将列表中的网址插入 json 正文。

我可以通过将列表转换为地图来做到这一点:{url: imageUrl},但输出总是给我一个长度为 1 的地图。

我确信对此有一个简单的解决方案,但我无法弄清楚。任何帮助将不胜感激。

提前致谢。

如果你有类似的东西:

var imageURL = ['url1', 'url2', 'url3', 'url4'];

然后你做类似的事情:

 var mapped = imageURL.map((url) => { 'url': url }).toList();

那么输出将如下所示:

[{url: url1}, {url: url2}, {url: url3}, {url: url4}]

这就是您要找的吗?

尝试获取列表并执行 .map

//要传递的正文

final data = {
     "fields": {
        "Pictures": imageURL.map((e)=> 
           {
             // e is the data which the imageUrl1 and so fort
             "url": e
           }
             ).toList(),
         "Variation": "Original"
    }

};