gpt4 book ai didi

node.js - MongoDB GridFS - 是文件名还是文件名

转载 作者:可可西里 更新时间:2023-11-01 10:34:44 26 4
gpt4 key购买 nike

请看下图,来自http://mongoexplorer.com/ :

http://mongoexplorer.com/

我一直在尝试通过 GridFS 工作,引用 https://github.com/jamescarr/nodejs-mongodb-streaming .我上传的文件很好地返回,通过以下 get 函数返回的流看起来是正确的。

var gridfs = (function () {
function gridfs() { }
gridfs.get = function (id, fn) {
var db, store;
db = mongoose.connection.db;
id = new ObjectID(id);
store = new GridStore(db, id, "r", {
root: "fs"
});
return store.open(function (err, store) {
if (err) {
return fn(err);
}
return fn(null, store);
});
};
return gridfs;
})();

使用 http://mongoexplorer.com/我将文件上传到 GridFS 进行测试,但当我使用上面的 Node 代码检索它们时,它们似乎损坏了。

那是我注意到文件名/文件名的时候。在这里查看 /node_modules/mongodb/lib/mongodb/gridfs/gridstore.js 我看到了对带有小写“N”的文件名的引用,但在我的 GridFS 中,它是带有大写字母“N”的文件名。

好吧,为了好玩,我在 GridFS 中将其更改为小写,但在检索使用 http://mongoexplorer.com/ 上传的文件时,流(上面的 Node 代码)中仍然出现一些损坏.在 http://mongoexplorer.com/ 中单击另存为... , 但是完美地恢复了我的罚款。

回到我的问题,(因为我的测试似乎没有证明任何东西,)我想知道它是什么:小写“N”的文件名,或大写的“N”的文件名?

最佳答案

请使用最新的 mongodb native 驱动程序,因为有大量针对 GridFS 的修复程序,github 目录中有大量驱动程序示例,也在测试将 GridFS 用作流。

文档在

http://mongodb.github.com/node-mongodb-native

一般来说,我会说,如果您使用核心功能,请坚持使用驱动程序作为您正在使用它的驱动程序,使用一种过时的方式来解释您的损坏问题。

关于node.js - MongoDB GridFS - 是文件名还是文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10262858/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com