图片上传(Nodejs)时Firebase存储引发错误

时间:2018-07-18 19:58:44

标签: node.js reactjs firebase firebase-storage

我有一个邀请用户上传图像文件的应用程序,然后打算使用Firebase的Cloud Storage进行存储。我使用Firebase文档已经走得很远了,但是当我尝试上传文件时却得到400响应。

以下是用户上传文件的组件:

class JobEntry extends Component { 
    constructor(props) {
      super(props);
    }

    render() {
      return (
        <div className="single-job-entry">
            <div className="job-item">
              <span className="job-item-label">Add doc?:</span>
              <input type="file"  
                id={this.props.id +"file"} 
                data-id={this.props.id} 
                onChange={this.props.submitDoc} />
            </div>
      </div>
      );
    }
  }

  export default JobEntry;

这是将文件上传到Firebase的函数(“ storage”和“ resumes”是firebase的存储引用):

  submitDoc (e) {
    let jobId = e.target.dataset.id
    let id = this.props.userId
    let file = document.getElementById(jobId + 'file').files[0]

    var newPath = storage.resumes.child(jobId + '/' + file.name)

    newPath.put(file).then(snapshot => {
      console.log('Uploaded file')
    }).catch(err => {
      console.log(err.message)
    })

  }

每次尝试上传文件时,都会出现此错误:

Firebase Storage: An unknown error occurred, please check the error payload for server response.

我已经检查了服务器的响应,但似乎没有任何迹象表明问题所在。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

事实证明,我必须先在Firebase UI中激活存储,然后才能通过Node与之交互。德普很高兴知道您是否开始使用Firebase。在他们的文档中找不到任何提及。