Javascript Firebase存储上载时参数无效

Javascript Firebase存储上载时参数无效,javascript,firebase,firebase-storage,Javascript,Firebase,Firebase Storage,我一直在索引0的put中得到一个无效参数:预期的Blob或File错误。有趣的是,争论完全是一个文件 代码如下: var file = document.getElementById('cke_69_fileInput') .contentWindow.document.getElementById('cke_69_fileInput_input').files[0]; var storageUrl = 'noticias/imagenes/'; var storageRe

我一直在索引0的put中得到一个
无效参数:预期的Blob或File
错误。有趣的是,争论完全是一个文件

代码如下:

var file = document.getElementById('cke_69_fileInput')
          .contentWindow.document.getElementById('cke_69_fileInput_input').files[0];

var storageUrl = 'noticias/imagenes/';
var storageRef = firebase.storage().ref(storageUrl + file.name);
console.warn(file); // Watch Screenshot
var uploadTask = storageRef.put(file);
这是在错误请求文件之前实际文件警告的屏幕截图。。。

尝试将文件转换为blob

  var reader = new FileReader();
  reader.onloadend = function (evt) {
    var blob = new Blob([evt.target.result], { type: "image/jpeg" });

    var storageUrl = 'noticias/imagenes/';
    var storageRef = firebase.storage().ref(storageUrl + file.name);
    console.warn(file); // Watch Screenshot
    var uploadTask = storageRef.put(blob);

  }

  reader.onerror = function (e) {
      console.log("Failed file read: " + e.toString());
  };
  reader.readAsArrayBuffer(file);

您使用的firebase.js版本是什么?@MikeMcDonald 3.2.1Put{type:mime}用于上载所有格式的文件。@Aaron Saunders-谢谢!当blob工作时,我想知道firebase在这种情况下作为“文件”需要什么?还可以使用{type:file.type}来指定mime类型