问题标签 [gridfs-stream]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2541 浏览

javascript - 使用 gridFS 在 mongoDB 中存储文件(图像)

我正在用 angularJS 编写这个网页,我希望人们在其中编辑和存储文本和图像。我创建了一个文件上传功能,让您可以从用户计算机上传文件。问题是将此文件存储到 mongoDB 中。我已经阅读了很多关于 gridFS 的示例,但没有一个与我正在尝试做的完全匹配。这是我的代码:

网络服务器.js:

服务.js:

目前,当我运行代码时,我没有收到任何错误消息,但图像也没有存储在 db.files 或 db.chunks 中。任何帮助表示赞赏。

0 投票
1 回答
292 浏览

javascript - 错误 ENOENT,使用 gridFS 和节点 js 打开

我正在尝试使用 GridFS 保存项目及其文件。我想先保存项目并使用项目的“_id”作为文件的元数据。

这是我的代码:

我收到以下错误:- ENOENT,打开 '/tmp/45e85388793de'

我知道当目录不存在时会出现此错误。如您所见,我在保存项目后正在编写文件,因为我需要将文件链接到项目。这就是为什么我编写了代码来将文件保存在 project.save() 的回调函数中,但它在那里不起作用。如果我将相同的代码放在 .save 块之外,则相同的代码可以完美地用于相同的路径。(我已经显示了内部和外部的路径,它们是相同的)

0 投票
1 回答
484 浏览

node.js - 超出最大调用堆栈大小 - 保存到 GridFS - 没有递归发生

我正在尝试将文件保存到 node.js 中的 GridFS 中。用例实际上非常简单:“将文件上传到 restify 应用程序,将其保存到 GridFS 中”。

控制台告诉我

并且由于这是从事件触发的,因此我没有堆栈跟踪。无论如何,没有任何东西写入 GridFS。

由于我没有递归,我认为它必须在gridfs-stream或 mongodb 方面,并且由于这些都经过测试,我试图简单地提高--stack-size,这导致了分段错误。

这是我的环境:https ://github.com/semmypurewal/node-dev-bootstrap

0 投票
2 回答
377 浏览

c# - 关闭 Mongo GridFS 文件流时出现 WriteConcernException

我在 C# 中使用 MongoDB 驱动程序,并使用 GridFS 存储视频文件。
我像录制流一样连续存储文件,并且偶尔(可能在编写过程中)我要求“播放”一个文件。
在某些情况下,在播放文件的那部分会出现问题:
1. 打开相关的 GridFS 文件流。
2. 数据读取正常。
3. GridFS 文件流已关闭 -> 抛出 WriteConcernException 并包含以下详细信息:

`

当我所做的只是关闭文件流时,为什么会出现任何写入错误?

0 投票
0 回答
73 浏览

node.js - 如何从 gridform 中取回文件 ID?

作为参考,您可以查看我在 GitHub 上提交的问题。我能够流式传输到 MongoDB,并且该文件被持久化且可访问,但 README 在解析期间显示您可以访问文件 ID。如果您要为文件记录或排队后台作业,这是必需的。我无法记录文件 id,但记录文件对象显示 id 未定义或 null 取决于回调。

0 投票
1 回答
957 浏览

javascript - Mongoose gridfs-stream 如何填充 fs.file 集合

我在 nodejs 中使用 gridfs-stream 模块来存储图像。

如何填充用户照片以便访问文件信息?

我知道我的数据库中有 fs.files 和 fs.chunks。但是我应该为他们创建架构以便我可以引用我的模型吗?

0 投票
2 回答
2517 浏览

node.js - 如何使用 Sails.JS + GridFS 从 Mongo 检索图像文件?

我目前正在使用 Sails.js 构建网络,并陷入从 GridFS 检索图像文件中。我已经使用 skipper-gridfs 成功地将文件上传到我的 mongo gridfs。我不知道以正确的方式显示文件(我是 Sails.js 和 Node 系统的新手)

这是我从 gridfs 中检索图像文件的代码,类似于 FileController.js(我使用的是 gridfs-stream):

当我运行它时,控制台什么也没显示。也没有错误。

我应该如何解决这个问题?

附加问题:

  1. 将文件存储到本地磁盘/从本地磁盘读取文件而不是使用gridfs是否更好更容易?
  2. 我选择gridfs-stream 来检索gridfs 格式的文件是否正确?
0 投票
1 回答
2387 浏览

node.js - GridFS + NodeJS 从 mongoDB 检索图像

我有以下来自 mongoDB 的带有图像的 JSON,但我不知道如何显示它:

需要把“数据”变成真实的图像来显示。

我正在使用 nodeJS,但找不到使用 GridFS 从 mongoDB 检索图像的好教程。

谢谢你的帮助!

0 投票
1 回答
1270 浏览

node.js - 从 mongoDB 中检索图像

我正在使用gridfs,所以我的 monDB 中有:

我在做:

我有 :

但是我想显示 我尝试过的图像,但根本不清楚:

谢谢你的帮助!

0 投票
1 回答
2121 浏览

node.js - 从 Mongo 的 Gridfs 流式传输的图像未显示在浏览器中

我在这里发布这个问题,我一直在阅读许多相关的帖子,但其中任何一个都帮助我使它工作。

这个想法很简单:我有一个基于 MEAN 的应用程序,可以在其中将图像上传到 GridFS - 无需将其本地存储到服务器 - 稍后在浏览器中将其可视化。

所以让我们开始吧。我正在使用angular-file-upload模块从 AngularJS 上传图像。因此,在我的一个 AngularJS 控制器中,我有:

在我的 Node + Express 服务器中,我正在通过grids-stream模块处理上传请求和下载图像的请求。这使我可以直接在 GridFS 中/从 GridFS 中流式传输和保存图像,而无需暂时将其保存在服务器中。

在客户端,我有这个生成所有 HTML 图像元素的 HTML 指令:

其中my-image-draggable作为其元素之一:

在运行时,{{image.imageId.location}}, 被翻译为(例如):'/file/getFile/2350bcf0-53b4-11e4-9f6b-9fc9a66908c4.jpg',因此,原则上

应该downloadFile在服务器中触发 HTTP GET 请求,图像应该从 GridFS 流式传输,并最终显示在浏览器中。问题是图像不显示。

我还尝试在 Angular 控制器中对服务器发送的图像数据进行预处理,以便将其编码为 base64,并在运行时ng-src使其类似于:

但它也不起作用。

我也尝试downloadFile手动调用路线,但没有结果。我无法弄清楚为什么这不起作用。我想知道图像是否正确保存到 GridFS。

有什么建议吗?还有其他人遇到过同样的问题吗?

非常感谢!