【发布时间】:2017-05-24 00:03:03
【问题描述】:
我错过了什么吗?网络上的答案和我一样,但是....下载网址不再有扩展名,所以我的错误说:
"error": {
"code": 404,
"message": "Not Found. Could not delete object"
}
代码:
let url = demo[indexPath.row].downloadUrl
print(url) // shows the url
DataService.ds.REF_RECEIPTS.child(url).delete { (error) in
if error != nil {
print(error)
}
}
那行不通。其他人拥有和工作的是url =“demo.jpg”,我的只是一个带有令牌但没有文件扩展名的字符串。如果我转到网址,我会看到图片,那有什么问题?
编辑:
这是我上传图片的方式:
let receiptImageData = UIImageJPEGRepresentation(imagePlaceholder.image!, 0.2)
let metadata = FIRStorageMetadata()
metadata.contentType = "image/jpeg"
let receiptUID = NSUUID().uuidString
DataService.ds.REF_RECEIPTS.child(CURRENT_USER!.uid + "_" + receiptUID).put(receiptImageData!, metadata: metadata) { (metadata, error) in
if let receiptDownloadedUrl = metadata?.downloadURL()?.absoluteString {
self.expenseData(receiptUrl: receiptDownloadedUrl)
// Saving the image/receipt in local cache for faster access
//guard let img = UIImage(data: receiptImageData!) else { return }
//IMAGE_CACHE.setObject(img, forKey: receiptDownloadedUrl as NSString)
}
}
func expenseData(receiptUrl: String) {...}
我也试过let receiptUID = NSUUID().uuidString + ".jpg",但同样的问题。
【问题讨论】:
-
什么意思,下载地址不再有扩展名?他们以前有过扩展吗?您可以发布一个您当前的 url 架构的示例吗?
-
当然。我会用上传方法更新....
-
没有文件扩展名中的扩展名。
-
这更有帮助.. 当您执行
print(url)时,打印出来的 url 是什么样子的?你能提供一个示例网址吗? -
嗨@Sylar。你可以继续 post an answer to your own question 而不是在帖子中编辑它。然后,您可以将其标记为已接受,以便正确标记此问题。干杯! :)
标签: ios swift firebase swift3 firebase-storage