草庐IT

node-keyboard

全部标签

node.js - passport.js - 使用 passport-local 从 MongoDB 验证用户

我的MongoDB中有一个简单的用户集合。我使用mongo-native驱动程序。{"email":"johndow@example.com","password":"123456","_id":{"$oid":"50658c835b821298d3000001"}}当我通过pairemail:pass进行用户身份验证时,我将默认的Passport本地函数findByUsername重写为:functionfindByEmail(email,fn){db.collection("users",function(err,collection){collection.find({},{},

node.js - MongoDB nearSphere 只返回 100 个结果?

为什么$nearsphere查询总是返回100个结果?db.mytable.find({"geo":{"$nearSphere":[41.393552,2.171344999999974],"$maxDistance":0.007}}).limit(500).count()-->>>100results无论$maxdistance的值如何,我的表都有超过30.000条记录。 最佳答案 检查这个:https://jira.mongodb.org/browse/SERVER-739 关于no

node.js - 在 Node.js 中将二进制字符串转换为缓冲区

我有一个Web服务,它采用表示图像的base64编码字符串,使用imagemagick库创建该图像的缩略图,然后将它们都存储在mongodb中。我正在使用以下代码(大约)执行此操作:varbuf=newBuffer(req.body.data,"base64");//originalimageim.resize({srcData:buf,width:256},function(err,stdout,stderr){this.thumbnail=newBuffer(stdout,"binary");//storebufandstdoutinmongo});您会注意到我正在使用“二进制”编

node.js - node.js 中 d3 和 mongo 之间的冲突

在需要mongo(connect-mongo)的模块之前需要d3.js时,出现以下错误:TypeError:Cannotreadproperty'BSON'ofundefinedat.../node_modules/connect-mongo/node_modules/mongodb/lib/mongodb/index.js:48:44如果我在mongo模块之后需要d3.js,它工作正常......我不是第一个遇到这个问题的人,但我不知道有什么冲突HowtouseD3inNode.jsproperly? 最佳答案 发生这种情况是因为

node.js - 模式更改后如何从 mongo 中获取旧记录

我有一个现有的模式,如exports.OldCollectionSchema=newSchema({Id:{type:Schema.ObjectId},parentId:{type:Schema.ObjectId},userId:{type:String},userName:{type:String})现在,我想通过添加新字段type在两种情况下使用上述集合type将是场景a或场景b所以我想获取旧记录+type="scenarioa"并在页面中显示这怎么可能? 最佳答案 我相信Mongoose有一个__v字段表示版本,但我不是Mon

node.js - 围绕 node-mongodb-native 的最小层

我围绕node-mongodb-native包装器编写了可能是最小的包装器。但是,我觉得它需要改进。它太小了,放在这里很舒服:functionMongoWrapper(){this.db=null;};varmongoWrapper;module.exports=exports=mongoWrapper=newMongoWrapper;//Thismeansthatyoucando`newinclude('mongoWrapper').MongoWrapper()`mongoWrapper.MongoWrapper=MongoWrapper;//ObjectIdisthemosthan

删除&重装node_modules的方法

快速删除node_modules的方法先安装删除工具npminstallrimraf-g删除命令rimrafnode_modules安装/重装node_modules的方法先进入子项目cd子项目装node_modulesnpminstall

node.js - MongoJS 增加池大小

我正在通过MongoJS驱动程序使用Node.js和MongoDB构建一个简单的应用程序。我的目标是一些重负载(10分钟内约10000个用户,session大约30秒)我正在使用连接池,默认情况下mongojs创建5个预期共享的连接。我想扩大这个值以提高效率,否则一堆请求将等待一个非常不受欢迎的连接。我发现这解释了如果使用native驱动程序如何增加池大小http://technosophos.com/content/nodejs-connection-pools-and-mongodb我知道mongojs是native驱动程序的包装器,但是有没有办法在mongojs中设置连接池大小?

node.js - MongoDB。限制只有 `projection`(即过滤器)给定字段的子文档的方法?

因为MongoDB中没有办法过滤子文档(引用:HowtoselectsubdocumentswithMongoDB)MongoDB中是否有另一种方式/方法可以快速删除/过滤没有给定字段的字段,在下面的示例中没有subdocument字段?通过在mongodb的外部处理结果并过滤掉所有空文档是唯一的方法吗?(想象一下当您有上千个具有不同模式的子文档的情况。我执行.find()并获得1000个子文档,但900个是空的。我只想获得100个,所以我并不总是有处理并删除MongoDB之外的空的。)例如,您在名为monday的集合中有以下JSON:{document:[{subdocument:"

node.js - 将具有node_modules的本地Node.js项目Git repo推送到Heroku时,本地node_modules是否会覆盖Heroku上的那些?

我想更好地理解node_modules之间的关系,这些node_modules是我在本地计算机上的Node项目的一部分,而那些是我驻留在Heroku上的应用程序的一部分。当我在本地构建和测试项目时(在我的机器上,使用我的localhost),我需要下载各种Node模块(例如,mongodb,mongoose、util、express等)。当我在本地测试我的应用程序后,我想将它推送到服务器。当我进行推送时,node_modules文件夹也会被推送。如果我已经通过我的帐户在Heroku上安装了MongoDB(通过HerokuMongoLab附加组件)和Mongoose会发生什么/app的仪