【问题标题】:Saving images in node js to location with a link in a mongo database使用 mongo 数据库中的链接将节点 js 中的图像保存到位置
【发布时间】:2015-05-26 10:22:46
【问题描述】:

我正在做一个小项目,我可以将数据上传到 mongo 数据库,但到目前为止我无法将图像保存到同一个数据库,我的一个朋友建议我发送对数据库的引用,但在这个阶段我还没有弄清楚如何做到这一点,任何帮助将不胜感激。

【问题讨论】:

    标签: node.js mongodb express pug


    【解决方案1】:

    您可以使用来自Turistforeningennode-s3-uploader 库或构建类似的东西,如果您想保存在本地磁盘上。后面的工作是获取您收到的图像文件,将其转换为多个版本以优化带宽,您在 MongoDB 或 MySQL 上保留对原始版本的引用。

    当客户端请求图片时,将原始链接发送给他们,根据他们需要的情况,客户端将推断原始链接以重新缩放链接。

    【讨论】:

      【解决方案2】:

      像图片这样的资产不应该直接保存到数据库系统,而是保存到服务器的本地磁盘,你只需将该图片的链接保存到数据库。

      像mongodb或mysql这样的数据库系统应该保存将被查询的东西,这就是我们使用数据库系统的原因。二进制文件或图像之类的东西应该只保存到本地磁盘,因为这些文件的内容不可读,也无法查询。但是这些文件的名字、路径或者URL是可以查询的,所以我们一般都是把这些东西保存到数据库系统中。

      【讨论】:

      • 非常感谢您的回复,这对我很有帮助,但由于我对编程比较陌生,因此我非常感谢您知道的任何代码教程,以帮助我更好地解决这个绊脚石。
      • 假设您的 http 根路径是 /home/user/app/ 并且您的 主机名 是 mywebsite。然后如果用户上传图片给你,那么你可以按照以下步骤操作:1.获取用户上传的数据并将其保存到/home/user/app/image.png 2.将字符串'mywebsite/image.png`保存到mongodb 3.当你想要要向用户显示 png,只需查询 mongodb,您将获得 URL,然后编写带有 href 值的 img 标记 mywebsite/image.png
      猜你喜欢
      • 2016-01-13
      • 2021-10-16
      • 2018-07-20
      • 2020-11-27
      • 2021-06-20
      • 2017-08-12
      • 1970-01-01
      • 2021-12-31
      • 1970-01-01
      相关资源
      最近更新 更多