我有一个邀请用户上传图像文件的应用程序,然后打算使用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.
我已经检查了服务器的响应,但似乎没有任何迹象表明问题所在。
感谢您的帮助!
答案 0 :(得分:0)
事实证明,我必须先在Firebase UI中激活存储,然后才能通过Node与之交互。德普很高兴知道您是否开始使用Firebase。在他们的文档中找不到任何提及。