草庐IT

Node-red

全部标签

node.js - 在 MongoDB 中建模访问控制

有人有在MongoDB中建模访问控制的示例吗?我想到的情况是:有一组资源,每个资源都是自己的文档(例如汽车、人、树等)。用户可以通过显式授权或隐式地成为资源的所有者、存在于另一个集合(例如角色)或其他一些隐式方式来访问资源。在一个collection.find()方法中,可以应用跳过和限制选项(用于分页),有没有办法检查所有这些显式和隐式路径并生成用户有权访问的资源的结果?在MySQL中,我们使用带有资源ID、授予用户ID、授权用户ID和操作(读取、写入等)的授权表对其进行建模。然后,我们在一个查询中选择至少一个子查询为真的所有资源,然后子查询检查所有不同的访问路径,例如一个检查拨款,

Error: Cannot find module E:\nodejs\node_modules\npm\bin\npm-cli.js

Error:CannotfindmoduleE:\nodejs\node_modules\npm\bin\npm-cli.js在用node开发服务器端的时候,发现用npm下载一个插件,成功之后,再用npm命令进行相关操作,报错了Error:CannotfindmoduleE:\nodejs\node_modules\npm\bin\npm-cli.js。这个错误翻译过来就是说:找不到nodejs\node_modules\npm\bin\npm-cli.js这个路径对应的文件了,跑我的E盘看的时候,确实npm文件夹直接都没有了,网上查了很多方法,都建议重装。(当然我也重装过很多遍了)后面仔细看

node.js - mongoose:缩短存储 node.js 模型的属性名称

在C#中,可以使用MongoDB驱动程序为数据模型中的每个属性定义自定义的BS​​ONElement名称,以缩短其存储的名称,例如[BsonElement("n")]publicStringName{get;set;}有没有办法在定义为node.js的模型中使用mongoose实现此目的varProject=newSchema({id:ObjectId,name:String,});mongoose.model("Project",Project);以便属性“name”将存储为“n”并在代码中作为“name”引用?研究docs在这一个上效果不是很好。谢谢!

node.js 在向 mongodb 中插入许多记录时静默停止

我有一个非常简单的mongodb数据库,其中包含一个名为“test”的集合,我需要向该集合中插入133.306条记录。这些记录存储在JSON文件中。该文件的大小为21Mb。50.000条记录在一秒钟内插入成功。70.000条记录插入挂起脚本。代码:varpath=require('path'),fs=require('fs'),mongodb=require('mongodb'),safe={safe:true},rowset;rowset=JSON.parse(fs.readFileSync(path.join(__dirname,'test.js')));console.log('

node.js - nodejs、mongodb 和 heroku 栈上的后台处理

我正在编写一个简单的图片上传网站作为学习项目。它是用nodejs编写的,带有mongodb并部署到Herokucedar上。我想实现一个Node脚本,比如说每小时运行一次,并应用redditalgorithm到图像并将每个图像的分数存储在mongodb中。考虑到我在heroku上并且有文件系统限制,我怎样才能实现这一点?-鉴于雪松架构,最好交给一个单独的工作人员,但如果有更快/更简单/更容易的方法,我会很高兴听到它。herokudevcenterarticleonworkers/backgroundjobs遗憾的是,尚未列出此类系统的任何教程。我之前在heroku上进行后台处理的经验是

node.js - mongodb 并在 node.js 中进行身份验证和通行证

我在mongodb中有一个这样的集合{username:silver,Email:sil@gmail.com,password:silvester,}为了进行身份验证,我将从数据库中获取数据,然后我将使用这样的if语句检查给定的电子邮件是否存在app.post("/login",function(req,res){varemail=req.body['emailid'];collection.find({email:sil@gmail.com}).toArray(function(err,res){if(res.length==0){console.log("nameisnotexis

node.js - 是否有可能在 Mongoose 中有一系列可选的子文档模式

是否可以在mongoose中使用一组替代子文档架构?例如,以这个虚构的场景为例:如果我有一个人的主模式,并且我有一个名为vehiclesoftypearray的字段,我希望能够定义子文档模式,但是对于每种车辆类型(car,摩托车,自行车,公共(public)汽车等):varcar=newmongoose.Schema({make:{type:String,required:true,default:'Ford',trim:true},model:{type:String,trim:true},wheels:Number,});varmotorbike=newmongoose.Schem

node.js - 是否可以打包一个 'real' mongodb 库以仅在 meteor 0.6 中用于 *server* 端

我知道0.6之前用meteor打包的“mini-mongo”在聚合方面有一些限制,但希望随着0.6的发布,这个故事会更容易一些。我试图解决的问题是mini-mongo中缺少“聚合”。我有一个带有这样记录的mongodbdb.account_records.findOne(){"type":"initial_balance","amt":10,"account_id":"95CPB9Be8NX3TGSpi","_id":"L9D7Agt4gW2Ht4NTA"}我想(在客户端)订阅如下查询..db.events.aggregate([{$group:{_id:"$account_id",b

node.js - 是否可以在 mongoosejs 模式中填充自引用?

我有一个mongoose模型模式,我正在尝试为一些预先存在的mongodb文档构建它。现有的mongo文档具有对同一集合的自引用。我试图创建一个表示这种关系的模式,然后尝试使用populatemethod.架构如下所示(为简洁起见删除了一些属性):varfileSchema=newSchema({_id:{type:String},pcap:{files:[{type:Schema.Types.ObjectId,ref:'Files'}]}});varfile=artifactConn.model('Files',fileSchema,'info');然后我使用上面的模型来查询然后像这

javascript - 在 node.js 中解压缩 zip 文件时如何处理错误

我正在尝试上传zip文件,然后我必须在服务器端提取它,而且我还必须在提取该zip文件时处理错误。要提取我正在尝试这样varzip=newAdmZip(x);zip.extractAllTo('targetpath');extractAllTo不包含回调函数,如果它包含我可以轻松处理错误所以让我知道如何在提取zip文件时处理错误。我正在创建一个tmp文件夹,在上传文件后,我将上传的文件保存到tmp文件夹中,然后我将上传的文件存储到原始文件夹中,我将采用该路径存储db(mongodb)。存储数据后我在那个回调函数中的回调函数中存储了结果我试图删除那个tmp文件夹,但我无法删除它。我已经厌倦