尝试将图像上传到 Firebase 存储时出错
Posted
技术标签:
【中文标题】尝试将图像上传到 Firebase 存储时出错【英文标题】:Error when trying to upload an Image to Firebase Storage 【发布时间】:2022-01-08 16:34:02 【问题描述】:我正在尝试将图像文件(我从图像选择器中)上传到 Firebase 存储。我对此有点陌生,我在搜索时发现的所有示例似乎都是旧版本的插件,所以也许这与它有关。 如果有人可以查看我的代码并告诉我哪里出错了,我将不胜感激。
这是我正在使用的代码:
Future uploadFile() async
firebase_storage.Reference storageReference = FirebaseStorage.instance
.ref()
.child('chats/$Path.from(_image.path)');
UploadTask uploadTask = storageReference.putFile(_image);
await uploadTask;
print('File Uploaded');
storageReference.getDownloadURL().then((fileURL)
setState(()
print("UPOADED FILE URL IS: $fileURL");
// _uploadedFileURL = fileURL;
);
);
我收到的错误是:
未处理的异常:类型“字符串”不是类型“路径”的子类型
非常感谢您的帮助。
【问题讨论】:
【参考方案1】:编辑:您也不应该将 Path.from 作为 String 传递,而是直接使用其 path 属性,因为它是 String getter,如下所示:
'chats/$_image.path'
试试这个:
print("UPOADED FILE URL IS: $fileURL.toString()");
此外,您在 StorageReference 中有额外的 ,但这不会导致问题。
【讨论】:
您好,错误出现在您提到的打印语句之前。它没有执行上传任务。 尝试我添加到答案中的编辑。直接传递 _image.path 而不是 Path.from以上是关于尝试将图像上传到 Firebase 存储时出错的主要内容,如果未能解决你的问题,请参考以下文章
当我将图像上传到 Firebase 时,来自 Database Realtime 的图像 url 与 firebase 存储中的图像 url 不同
当我尝试将图像上传到 Firebase 存储时,putFile 在 kotlin 中不起作用