【发布时间】:2018-12-26 20:25:08
【问题描述】:
我有一个应用程序邀请用户上传图像文件,然后我打算使用 Firebase 的云存储来存储这些文件。我已经使用 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.
我已经检查了服务器响应,似乎没有任何迹象表明问题所在。
感谢任何帮助!
【问题讨论】:
-
如果您手动将文件添加到存储,您可以下载它吗?错误不是很具体,所以我试图猜测。另外,我会尝试使用
storage.child(...)而不使用.resumes
标签: node.js reactjs firebase firebase-storage