2016-12-07 1 views
0

Ich mag den Wert der Download-URL erhalten und speichern sie in Feuerbasis Datenbank,Wie den Wert von Firebase Speicher Download-URL erhalten und es in Feuerbasis Lagerung speichern ....,

var uploadTask = storageRef.child('video/' + file.name).put(file,metadata); 

// Überprüfung auf Upload-Fortschritt

   uploadTask.on(firebase.storage.TaskEvent.STATE_CHANGED, // or 'state_changed' 
       function(snapshot) { 
       // Get task progress, including the number of bytes uploaded and the total number of bytes to be uploaded 
       var progress = (snapshot.bytesTransferred/snapshot.totalBytes) * 100; 
       console.log('Upload is ' + progress + '% done'); 
       switch (snapshot.state) { 
        case firebase.storage.TaskState.PAUSED: // or 'paused' 
        console.log('Upload is paused'); 
        break; 
        case firebase.storage.TaskState.RUNNING: // or 'running' 
        console.log('Upload is running'); 
        break; 
       } 
       }, function(error) { 
       switch (error.code) { 
       case 'storage/unauthorized': 
        // User doesn't have permission to access the object 
        break; 

       case 'storage/canceled': 
        // User canceled the upload 
        break; 
       case 'storage/unknown': 
        // Unknown error occurred, inspect error.serverResponse 
        break; 
       } 
      }, function() { 

also, was ich will, ist der Wert von downloadURL und speichern sie es zu bekommen, aber ich bin kein Javascript Experte, damit ich weiß nicht, wie seine variablen Wert erhalten

 // Upload completed successfully, now we can get the download URL 
     var downloadURL = uploadTask.snapshot.downloadURL; 

     console.log(downloadURL); 
    }); 

Antwort

0

Nach diesem var uploadTask = storageRef.child('video/' + file.name).put(file,metadata);

Fügen Sie diese Zeilen

var completed = function(data){ console.log(data.downloadURL); }; 

uploadTask.then(completed, function(error){}); 

Ich bin nicht 100% sicher, dass es funktionieren wird, weil ich es haben getestet.

Ich habe die Info bekam, dies zu tun von Firebase Storage Documentation

+0

Alles, was ich möchte diesen Wert aus einer anderen Funktion zu erhalten, hat es viel über das Verständnis von JavaScript-Funktionen und den Zugriff auf Daten in anderen Funktionen .. ...., –

+0

Haben Sie meine Lösung versucht, um zu sehen, ob es funktioniert? – Lirianer

1
}, function() 
{ 
    // Upload completed successfully, now we can get the download URL 
    var downloadURL = uploadTask.snapshot.downloadURL; 

    var path = storageRef.fullPath 
    var name = storageRef.name 
    var imagesRef = storageRef.parent; 


    var ctitle=video_title.value; 
    var cdescription=video_description.value; 
    var clength=video_length.value; 
    var c_category=video_category.value; 

    var created_at=video_created_at; 

    var created_path=path; 

    var created_name=name; 

    var created_images_ref=imagesRef; 

    var create_downloadURL=downloadURL; 

firebase.database().ref('Video').push({ 


    VTitle: ctitle, 
    vDescription: cdescription, 
    vLength: clength, 
    VCategory: c_category, 

    vCreatedAt: created_at, 

    vcreated_path:created_path, 

    vcreated_name:created_name, 

    create_downloadURL:create_downloadURL, 



    vcreated_images_ref:created_images_ref 
    }); 



// console.log(downloadURL); 
}); 
Verwandte Themen