2017-10-07 40 views
0

我是Express/Node环境的新手,并且不了解提供的API和功能。我们的项目中有Express 4,需要添加功能,其中会有几个文件上传按钮。 我们考虑将文件存储到DB(SQL Server)表而不是文件系统。 我尝试了一些例子,并能够上传文件到文件系统(使用express-file-upload模块)。 现在我想尝试一下数据库表,这是我们团队想要的方式,并且想知道我们需要的最佳方式。 我看到选项快递节点发送文件到数据库或文件上传

-busboy模块 - multer - 简单的文件/路径模块打开/读取文件,并插入查询(我想这个方法,但don'nt知道这是否正常工作)

请建议正确的方法。 使用相同的文件上传按钮,现在文件将存储在表中。表列

  • 文件编号
  • 一滴,
  • 创建时间
  • 用户ID

任何意见或建议。 谢谢

回答

0

我建议使用multer,因为它提取了文件上传的大部分复杂性。

你当然可以在你的数据库中存储文件blob,但我不会这样做。这会使您的数据库非常庞大,备份可能需要很长时间。请参阅this stackexchange答案。

我强烈建议在服务器本身或更好的存储上使用S3。通过使用S3,您可以获得AWS的所有优势和超低的价格。然后,将S3密钥存储在数据库中。

+0

感谢您抽出时间回复。我会尝试一下穆拉特。我能够使用express-file-upload在本地存储它。我认为AWS不会成为我们的选择。但我一定会与我们的团队签约。你知道在使用S3存储的互联网上有一些例子吗?只是为了学习。我们在技术方面受到限制。我们需要使用sql server db在IIS env上部署节点。如果不是,将会用于服务器存储选项。 – user3665943