未找到 Firebase 对象
Posted
技术标签:
【中文标题】未找到 Firebase 对象【英文标题】:Firebase Object Not Found 【发布时间】:2017-04-18 19:27:59 【问题描述】:伙计们,我正在使用 Firebase 制作一个简单的应用程序,我正在上传一张图片,并在稍后的某个时间下载它。上传效果很好,但是当我尝试下载时出现错误提示。找不到对象 profile_pics。我创建了一个名为 profile_pics 的文件夹,并将图像存储在该文件夹中。图像在那里,但下载时出错。这是屏幕截图。
这是控制台中的内容。
错误 -: 对象 profile_pics 不存在。
这是下载图像的代码。
let storage = FIRStorage.storage().reference(forURL: "gs://dd-dd-dd.appspot.com/profile_pics/\(profileURL)")
print("Path Full \(storage.fullPath)")
storage.data(withMaxSize: 11 * 1024 * 1024, completion:
(data, error) in
if let error = error
print("Error -: \(error.localizedDescription)")
else
let image = UIImage(data: data!)
cell.profileImageView.image = image
)
可能的错误是什么?如果你能指导我完成这个。
【问题讨论】:
我几乎复制并粘贴了您的代码,它对我有用。仔细检查谷歌空间 URL。哦,还要确保您在 Firebase 控制台中添加了应用程序,并且还导出了正确的 GoogleService-Info.plist 文件并将其添加到您的项目中。也许它指向了错误的位置。 @Jay 如果 info.plist 文件不正确,那么我将无法将数据上传到 Firebase 存储和实时数据库并进行身份验证。但这一切都很好。唯一的问题是这个下载图像。 你确定 profileURL 是 a) 不为空,并且 b) 只是文件名而不是它自己的一些单独的 URL? 您是否可能不小心在另一个项目中创建了 profile_pics 文件夹?代码 sn-p 中 forURL 后面的字符串应该与屏幕截图中被涂黑的字符串匹配。 我从 Firebase 复制了 url 并将其粘贴到项目 gs://todo-app-7bb96.appspot.com/profile_pics 完整链接在上面。我粘贴了它,但没有任何反应。 【参考方案1】:我是这样恢复的。
let url = URL(string: "\(ImageUrlSavedinDatabase)")
let task = URLSession.shared.dataTask(with: url!) data, response, error in
guard let data = data, error == nil else return
DispatchQueue.main.sync()
self.profilepicimageview.image = UIImage(data: data)
self.actIndicator.stopAnimating()
task.resume()
这行得通吗?
尼尔
【讨论】:
以上是关于未找到 Firebase 对象的主要内容,如果未能解决你的问题,请参考以下文章
在 Firebase 中部署功能时出现 Firebase 未找到错误
Firebase - 未找到 GetTokenResult、getExpirationTimestamp()
未找到模块:错误:无法解析“@firebase/app”Ionic Firebase