Как обновить узел хранения firebase swift - PullRequest
0 голосов
/ 31 августа 2018

Я хочу, чтобы узел FB Storage под uid пользователя (который имеет только один файл данных) обновлялся новыми данными файла. Использование .putData просто добавляет другой файл в узел, и я не уверен, как использовать вызов .update, поскольку он использует метаданные, и я знаю только, как создать uploadData.

@objc func doneTapped() {

    guard let uid = Auth.auth().currentUser?.uid else {return}
    let filename = NSUUID().uuidString
    let storageRef = Storage.storage().reference().child("profile_images").child(uid)
    let storageFileRef = storageRef.child(filename)

    guard let image = self.profileImageView.image else {return}
    guard let uploadData = UIImageJPEGRepresentation(image, 0.3) else {return}

        storageFileRef.putData(uploadData, metadata: nil) { (metadata, error) in

            if error != nil {
                print ("Couldn't upload new profile pic:", error as Any)
                return
            }

1 Ответ

0 голосов
/ 31 августа 2018

На самом деле я исправил проблему, просто удалив имя файла. Итак, в предыдущем случае я создавал папку uid, и в этой папке был бы список изображений, но, поскольку я просто хочу сохранить только одно изображение, я назначил этому пользователю uid действительное имя файла, а не имя папки для хранения. файлы.

let storageFileRef = Storage.storage().reference().child("profile_images").child(uid)

В основном только что сбрил часть ссылки .child (имя файла)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...