问题描述
我正在一个项目中,其中已使用filepond和GridFS将图像上传到MongoDB数据库。
我对于如何找回图像并将其显示在简单的HTML元素中一无所知。
据我所知,似乎他们正在使用multer来上传文件,同时将Filepond用作前端。
以下是Filepond实现的代码:
<div className={styles.uploadBox}>
{/* Pass FilePond properties as attributes */}
<FilePond
ref={(ref) => (this.pond = ref)}
files={this.state.files}
allowMultiple={true}
maxFiles={5}
name={"singlesong"}
allowReorder={true}
instantUpload={false}
labelIdle={
'Drag & Drop your Songs or <span class="filepond--label-action"> browse </span>'
}
server={"/user/uploadsong"}
oninit={() => this.handleInit()}
onupdatefiles={(fileItems) => {
this.setState({
files: fileItems.map((fileItem) => fileItem.file),});
}}
onprocessfile={(error,res) => {
this.handleOnUpload(error,res);
}}
></FilePond>
{this.state.message ? <Message message={this.state.message} /> : null}
</div>
关于multer后端,这是代码:
const storage = new GridFsstorage({
url: keys.MONGODB_URI,file: (req,file) => {
return new Promise((resolve,reject) => {
crypto.randomBytes(16,(err,buf) => {
if (err) {
return reject(err);
}
const filename = buf.toString("hex") + path.extname(file.originalname);
const fileInfo = {
filename: filename,bucketName: "songs",};
resolve(fileInfo);
});
});
},});
const upload = multer({
storage,});
首先,我不太确定Filepond如何与后端代码进行通信。
此外,如前所述,我也不知道如何从数据库中检索任何图像。
非常感谢任何指针。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)