2016-08-04 23 views
0
?

Ich versuche ein in Firebase Storage hochgeladenes Bild in meiner App anzuzeigen. Dazu möchte ich die URL in der Firebase-Datenbank speichern.Wie bekomme ich die Image-URL nach dem Hochladen auf Firebase 3.0 mit Swift

Dies ist, wie ich bin das Hochladen von Firebase:

  let storageRef = FIRStorage.storage().reference() 
      let imagesRef = storageRef.child("images/pato.png") 

      let data = UIImagePNGRepresentation(imageSelectorImage.image!) 

      let uploadTask = imagesRef.putData(data!, metadata: nil, completion: { (metadata, error) in 
       if(error != nil) { 
        print("Upload error") 
       } else { 
        let downloadURL = metadata!.downloadURL() 

        print("\(downloadURL)") 
       } 
      }) 

Im downloadURL ich so etwas wie dies https://firebasestorage.googleapis.com/v0/b/mytestapp-5a7f.appspot.com/o/images%2Fpato.png?alt=media&token=7b080333-8671-4bc2-994f-2cc9a9b76178

ich getestet bin immer und ich habe geschaffen, aus der URL dieses Bild anzuzeigen, in Meine App, die Frage, die ich habe, ist über dieses Token, das in der URL ist, wird dies für immer dauern? (da, wenn ich versuche, auf das Bild ohne das Token zuzugreifen, bekam nichts zurück.)

Ist das die richtige URL in der Firebase-Datenbank zu speichern?

Vielen Dank im Voraus für jede Hilfe.

+0

vielleicht kann dies hilfreich sein: https://firebase.google.com/docs/storage/security/ und diese https://firebase.google.com/docs/auth/server/verify-id-tokens – iOSGeek

Antwort

1

Das Token in der Download-URL ist nur eine zufällig generierte Zeichenfolge, die die URL nicht identifizierbar macht. Es läuft weder ab noch ist es an ein bestimmtes Benutzerkonto gebunden.

Aus diesem Grund konzentriert sich die Firebase-Dokumentation nicht auf das Token. Stattdessen wird angegeben, dass die Download-URL eine öffentlich zugängliche URL ist.