-1
我有一個奇怪的問題,我總是使用這段代碼來擦除圖像,它始終工作,即使在這個應用程序在其他viewControllers它運作良好。swift firebase存儲NSInternalInconsistencyException
現在我總是得到:
uncaught exception 'NSInternalInconsistencyException', reason: 'URL scheme must be one of gs://, http://, or https:// '
刪除在標記/ gruopId文件夾
我試圖打印圖像的URL刪除的圖像:
https://firebasestorage.googleapis.com/v0/b/firebase-itsthere.appspot.com/o/Markers%2F-KwKLgt2saNQpZiJuexi%2FC75EE058-61C3-47DB-AFAC-FE18078A0A7F?
和imageRef :
gs://firebase-*******.appspot.com/Markers/-KwKLgt2saNQpZiJuexi/C75EE058-61C3-47DB-AFAC-FE18078A0A7F
兩者都可以,那爲什麼呢?
請給我一點線索,浪費6小時!
let storageRef = Storage.storage().reference(withPath: "MarkersMarkers\(self.groupId!)")
pictureOfGroup.child(self.groupId!).observe(.value, with: { (snapshot) in
if snapshot.exists(){
if let snapshots = snapshot.children.allObjects as? [DataSnapshot] {
for snap in snapshots {
let dict = snap.value as! [String: Any]
let imgToDelete = dict["image"] as! String
print(imgToDelete, "imgToDelete")
let url = imgToDelete
let imageRef = storageRef.storage.reference(forURL: url)
print(imageRef)
imageRef.delete { (error) in
if error != nil {
// Uh-oh, an error occurred!
print("error0: \(String(describing: error))")
} else {
// File deleted successfully
print("deleted")
}
}
}
}
}
})
}
我認爲問題出在這個路徑上'Markers \(self.groupId!)'而不是你的路徑應該是'Markers/\(self.groupId!)' – 3stud1ant3