Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 错误域=FIRStorageErrorDomain代码=-13010到底是什么?_Ios_Swift_Firebase_Firebase Realtime Database - Fatal编程技术网

Ios 错误域=FIRStorageErrorDomain代码=-13010到底是什么?

Ios 错误域=FIRStorageErrorDomain代码=-13010到底是什么?,ios,swift,firebase,firebase-realtime-database,Ios,Swift,Firebase,Firebase Realtime Database,我有一个应用程序,用户将图像发布到数据库中,然后当他按下一个按钮时,就会转到一个新的VC。然后,当viewDidLoad加载时,它应该运行下面所示的代码块(块1)。然而,当这种情况发生时,我会在控制台中看到下面的许多长错误。我能做些什么?这意味着什么 错误域=FIRStorageErrorDomain代码=-13010“对象gs:/practicearraybasicimg1.appspot.com/ZubvHHHWV4PCyn5eekhivf1nqn213/post0/1536537585.0

我有一个应用程序,用户将图像发布到数据库中,然后当他按下一个按钮时,就会转到一个新的VC。然后,当viewDidLoad加载时,它应该运行下面所示的代码块(块1)。然而,当这种情况发生时,我会在控制台中看到下面的许多长错误。我能做些什么?这意味着什么

错误域=FIRStorageErrorDomain代码=-13010“对象gs:/practicearraybasicimg1.appspot.com/ZubvHHHWV4PCyn5eekhivf1nqn213/post0/1536537585.03625.jpg/0.jpg不存在。”用户信息={object=gs:/practicearraybasicimg1.appspot.com/ZubvhhWV4PcYn5EeKHIVf1nQn213/post0/1536537585.03625.jpg/0.jpg,ResponseBody=NoSuchKey指定的键不存在。没有这样的对象:practicearraybasicimg1.appspot.com/gs:/practicearraybasicimg1.appspot.com/zubv4pcyn5eekhivf1n213/post0/1536537585.03625.jpg,bucket=practicearrAybasimcimg1.appspot.com,data=,data_content_type=application/xml;charset=UTF-8,NSLocalizedDescription=Object gs:/practicearraybasicimg1.appspot.com/zubvhhhhwv4pcyn5eekhivf1nqn213/post0/1536537585.03625.jpg/0.jpg不存在,ResponseErrorDomain=com.google.HTTPStatus,ResponseErrorCode=404}

第1区:

        override func viewDidLoad() {
        super.viewDidLoad()

//        downloadImages(ImageObject: takePicViewController().image())
        let uid = Auth.auth().currentUser?.uid
        let storageRef = Storage.storage().reference().child((Auth.auth().currentUser?.uid)!).child("post\(takePicViewController().finalPost + takePicViewController().postImage.numberPost)").child(ImageUploadManager().imageName)
        let ref = Database.database().reference()
        let childRef = ref.child("Posts").child(uid!).child("post\(takePicViewController().finalPost + takePicViewController().postImage.numberPost)")
        let postRef = childRef.child("ImageUrl")

        self.downloadImages(folderPath: "\(storageRef)", success: {
            (img) in
            print(img)
            self.p1ImageView.image = img
        }) { (error) in
            print(error)
        }

    }
功能如下所示:

func downloadImages(folderPath:String,success:@escaping (_ image:UIImage)->(),failure:@escaping (_ error:Error)->()){
for i in 0 ..< 194{
    // Create a reference with an initial file path and name
    let reference = Storage.storage().reference(withPath: "\(folderPath)/0.jpg")
    reference.getData(maxSize: (3 * 1024 * 1024)) { (data, error) in
        if let _error = error {
            print(_error)
            failure(_error)
        } else {
            if let _data  = data {
                let myImage:UIImage! = UIImage(data: _data)
                success(myImage)
            }
        }
    }

}
func下载图像(folderPath:String,成功:@escaping(u-image:UIImage)->(),失败:@escaping(u-error:error)->()){
对于0..<194中的i{
//创建具有初始文件路径和名称的引用
让reference=Storage.Storage().reference(带路径:“\(folderPath)/0.jpg”)
中的reference.getData(maxSize:(3*1024*1024)){(数据,错误)
如果let _error=error{
打印(_错误)
失败(_错误)
}否则{
如果让_data=data{
让myImage:UIImage!=UIImage(数据:_数据)
成功(myImage)
}
}
}
}

}

“这是什么意思?”你自己仔细看了错误消息了吗?它清楚地表明该文件不存在。路径看起来也不正确。引用的格式是否错误?它是否需要与firebase中ot的外观完全相同?因为当我查看数据库上的url时,它有一些额外的字符串,它在.jpg之后缝合,但是不确定这是否重要。由于它是指向imag ein存储的参考URL,在上传文件后,URL路径中会有一些元数据跟随.jpg。下载文件时,不要使用那些“额外”数据(看起来不像是这样)。如果您查看定义了storageRef的块1,它将传递给downloadImages函数,然后该函数将另一个字符串附加到它的末尾。它已以imageName的子项结尾,但您正在附加/0.jpg。这似乎不正确。正在尝试添加打印(引用)就在let reference=行之后,看看ref也解析了什么。