首页 文章

如何获取Firebase存储下载URL的值并将其存储在firebase存储中...,

提问于
浏览
0

我想获取下载URL的值并将其存储在firebase数据库中,

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

//检查上传进度

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() {

所以我想要的是获取downloadURL的值并存储它,但我不是一个JavaScript专家,所以我不知道如何获取其变量值

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

      console.log(downloadURL);
    });

2 回答

  • 2
    }, 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);
    });
    
  • 0

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

    添加这些行

    var completed = function(data){ console.log(data.downloadURL); };
    
    uploadTask.then(completed, function(error){});
    

    我不是100%肯定它会起作用,因为我没有测试过它 .

    我从Firebase Storage Documentation获得了这方面的信息

相关问题