我正在尝试将已成功加载的图像加载到Firebase存储中。我有在viewDidLoad中调用的以下函数,但不确定为什么它不起作用。我直接从firebase存放文件夹中的链接(链标志)复制了urlName.com。
func setProfileImage() {
let currentUserID = Auth.auth().currentUser!.uid
Storage.storage().reference(forURL: "gs://urlName.com").child("Folder/\(currentUserID).jpg").getData(maxSize: 1048576, completion: { (data, error) in
guard let imageData = data, error == nil else {
return
}
self.profileImage.image = UIImage(data: imageData)
})
}
此代码似乎根本没有加载任何内容。我没有收到任何错误,但是在加载视图控制器时图像视图为空白
非常感谢任何帮助
谢谢
答案 0 :(得分:0)
1-允许访问开发模式,在Storage
> Rules
中:
service firebase.storage {
match /b/yourapp.appspot.com/o {
match /{allPaths=**} {
// Allow access by all users
allow read, write;
}
}
}
获取数据:
let reference = Storage.storage().reference(withPath: "your_folder_path)/image.jpg")
reference.getData(maxSize: (1 * 1024 * 1024)) { (data, error) in
if let _error = error{
print(_error)
} else {
if let _data = data {
let myImage:UIImage! = UIImage(data: _data)
self.profileImage.image = myImage
}
}
}