使用 MongoDB Express React 和 Node.js 时有哪些存储图像的方法?

What are some ways of storing images when using MongoDB Express React and Node.js?

我目前正在做一个有鞋子模型的项目,目前我只用 imgUrl 填充鞋子的图像,但如果可能的话我想存储图像。我知道我可以使用 MongoDB 和 GridFS,但从我读到的许多人说 MongoDB 真的不适合存储大文件。那会推荐什么?以及如何在我的 MERN 应用程序中实施它?

MongoDB 不是存放文件的好地方。如果你想存储文件,你应该使用 Amazon S3 或 Google Could Storage.

最好的做法是将文件存储在存储器中,然后只将上传图像的 URL 保存在 MongoDB。

当谈到 Node.js 和 Express 时,我建议 multer package middleware, which is primarily used for uploading files. If you would use Amazon S3 for a storage, there is also a plug-in multer-s3 包可能会有帮助。

您可以查看 this video 如何在您的 Node.js 服务器上配置 Multer 和实现图像上传。图片上传后,Multer 会向您发送 return 数据,其中包含 destination 字段。然后,您可以将 destination 保存在 MongoDB.