mongodb - Flutter - 未处理的异常:NoSuchMethodError:在 null 上调用了 getter 'filename'
问题描述
我仍在学习颤振,并且在我的项目中一直面临问题,例如标题中所述的错误。我想使用 dio 和 formData 上传文件。img[] 是 mongodb 数据库中的变量,每当用户传递空图像时,我都会遇到错误。(因为我们不要求用户发送图像。)
这是我的代码。
upload2(List<File> babyList) async {
var formData = FormData.fromMap({
"userId": _id,
"babyname": _baby,
});
if(_babyList.length != 0){
for (int i = 0; i < _babyList.length; i++) {
var fileName = babyList[i].path.split('/').last;
formData.files.addAll([
MapEntry(
"babyimage[]",
await MultipartFile.fromFile(babyList[i].path,
filename: fileName,
contentType: new MediaType(lookupMimeType(fileName).split('/')[0], lookupMimeType(fileName).split('/')[1],
))),
]);
}
} else {
formData.files.addAll([ MapEntry("babyimage[]", null)]);
}
// sending the formdata to the database
AuthService().requestorRegister(formData).then((val) async {
print('Form Submitted Successfully');
_confirmationDialog(context);
});
}
解决方案
好的,我试过不在formdata中添加babyimage[],我也试过把空数组,null和babyList作为值。问题是它们可以工作,就我而言,唯一的问题是服务器。服务器没有更新。所以有时我们也必须检查服务器。哈哈
PS。我删除了代码中的 else 因为它是空的。