如何使用javascript将二进制文件插入mongodb?

时间:2014-07-25 22:33:40

标签: javascript mongodb

我想用javascript编写一个脚本,将二进制文件插入到mongodb中。该文件远小于max 16MB limit,因此使用GridFS实现此操作超出了我正在编写的功能的范围。

我正在编写脚本,所以我可以像这样运行它:

mongo localhost:27017/myMongoDB loadMyFile.js

loadMyFile.js看起来像这样:

db.myCollection.insert( {
  fileName: "myFile.ogg",
  file: cat(./myFile.ogg")
});

但是当我搜索集合时:

db.myCollection.find({
    fileName:"myFile.ogg"
});

我得到类似的东西:

{
  "_id":ObjectId("53d2d6c76c694a37315c0195"),
  "fileName": "myFile.ogg",
  "file":"ID3\u0002"
}

这似乎不对。请协助。谢谢你提前。

1 个答案:

答案 0 :(得分:1)

正如@ JuanCarlosFarah和@ RobertMunn的评论中所提到的,GridFS似乎是将文件插入数据库的最佳(也许是唯一的?)方式没有写一个小应用程序。

mongofiles -d myMongoDB -l myFileName.ogg --type audio/ogg put "The Name of my File in the Collection"

有关详细信息,请参阅mongofiles