首页 > 解决方案 > 在颤振中使用 MultipartFile 发送许多带有 id foreach 项目的图像

问题描述

我正在尝试使用 MultipartFile 发送图像列表,发送是根据每个图像的 id 和密钥完成的......

问题,我被告知:未处理的异常:类型'_InternalLinkedHashMap<String,动态>'不是'int'类型的子类型

但不清楚,因为我的歌曲中没有使用任何 int ......

这是我的代码:

sendPostImages(List responseImages, List userImages) async {
final _path = "files/send";
final uri = Uri.https("$myImgPath", _path);

final imageUploadRequest = http.MultipartRequest('POST', uri);

List imgs = [];
var filePostImg;

for (final item in responseImages) {
  imgs.add({
    ...responseImages[item],
    "name": "f$item",
  });
  filePostImg =
      await http.MultipartFile.fromPath("f$item", userImages[item].path);
  final listPostImgs =
      await http.MultipartFile.fromPath("files", imgs.toString());
  imageUploadRequest.files.add(filePostImg);
  imageUploadRequest.files.add(listPostImgs);

  try {
    final streamedResponse = await imageUploadRequest.send();
    final response = await http.Response.fromStream(streamedResponse);
    if (response.statusCode != 200) {
      final Map<String, dynamic> responseData = jsonDecode(response.body);
      print('''
    

    erreur de l'envoi des images...


    $responseData
    
    
    ''');
    }
    final Map<String, dynamic> responseData = jsonDecode(response.body);
    print(
      '''
    
    
    $responseData 
    
    
    ''',
    );
  } catch (e) {
    print(e);
  }
}

}

API文档:

// When sending several files
    "files": ["Object[]", [
        // For each file
        {
            "fid": "String",
            "fkey": "String",
            "name": "String" // Custom name that you choose
        }
    ]],
    // For each file
    "f01": "File" // The field's name must be the same as in the "files" object
},

标签: databaseimageflutterdartmultipartfile

解决方案


推荐阅读