浏览器JSON vs节点JSON

我试图将包含转义string的string序列化为JSON。 我会想象, JSON.stringify()将正确地重新转义这些string,并允许我JSON.parse它。 在一个简单的情况下,例如: JSON.parse(JSON.stringify("\\")) 节点的输出是“\”。 浏览器的输出是“\” – 看起来浏览器(在我的情况下是铬)不正确地将双反斜杠\\转换为\\\\ 。 这是为什么?

如何findJavaScript对象之间的共同属性

什么是find对象数组的通用/不同属性的最好/最有效的方法。 我需要确定所有对象中存在的属性集合,并且都具有相同的值(常见)。 最好我也想获得一个具有所有其他属性(差异)的数组。 我已经寻找一个有效的库/function,可以做到这一点。 但没有find任何东西。 所以我尝试了我自己。 考虑这个JS对象的数组: var objects = [{ id: '2j2w4f', color: 'red', height: 20, width: 40, owner: 'bob' }, { id: '2j2w3f', color: 'red', height: 20, width: 41, owner: 'bob' }, { id: '2j2w2f', color: 'red', height: 21, }, { id: '2j2w1f', color: 'red', height: 21, width: 44 }]; 我想确定color (价值red )作为唯一的共同财产。 […]

Nodejs – 是否有任何模块存在类似于nodejs中的请求模块?

我想从节点服务器进行restAPI调用。 我目前正在请求模块。 你会build议任何其他最好的模块REST调用(get / post)生产实践在nodejs? 问候,拉姆

我可以使用伊斯坦布尔为摩卡html-cov的仪器

我正在尝试使用istanbul instrument输出mocha -R html-cov但不能得到它的工作。 我的testing脚本是: test: post: – node_modules/.bin/istanbul cover node_modules/.bin/_mocha -dir $CIRCLE_ARTIFACTS — -u exports -R spec – node_modules/.bin/istanbul instrument . -o lib-cov – cp package.json lib-cov/ # needs to be copied manually – MY_LIB_COV=1 node_modules/.bin/mocha -R html-cov > $CIRCLE_ARTIFACTS/coverage.html 我的testing有以下开关: var mylib = process.env.MY_LIB_COV ? require('../lib-cov') : require('../'); 伊斯坦布尔在lcov-report/index.html给了我一个很好的输出。 摩卡的html-cov在coverage.html给了我'0%覆盖率0 SLOC' 伊斯坦布尔的lcov报告是丑陋的。 我想用漂亮的mocha […]

NodeJS OAuth2.0原则

最近我正在研究一个nodeJS项目,我正在考虑如何去实现我的移动应用程序的安全模块。 我曾经使用过C#项目中使用的OAuth 2.0协议。 在.NET中有两个很好的开源项目 https://github.com/thinktecture/Thinktecture.IdentityServer.v3 https://github.com/thinktecture/Thinktecture.AuthorizationServer 前者是支持联合身份validation的身份提供者,后者是OAuth 2.0提供者。 所以我决定为我的nodeJS应用程序使用相同的安全基础结构。 但据我所知,这些项目没有什么相同之处。 我发现了一些非常好的项目,这些项目还没有完成,但是一个好的开始: https://www.npmjs.org/package/node-oauth2-server https://github.com/domenic/restify-oauth2 另外,我遇​​到了一篇不错的文章,提出了一个在nodeJS中处理身份validation的好方法。 https://auth0.com/blog/2014/01/07/angularjs-authentication-with-cookies-vs-token/和一个类似的答案在stackoverflow上的查询。 在网站和自有API之间进行身份validation 据我所知,expressJwt守卫我们的api,基本上会validation用户发送的访问令牌。 但我想更进一步,将令牌与应用程序特定的作用域相关联,与OAuth2.0协议类似。 因此,例如,我想分配一个写,读等范围,并expressJwt检查用户的令牌是否具有作为特定的API端点访问所需的范围。 如果您能提供一些关于如何处理这个问题的build议,我将不胜感激。

在Winston的纯文件日志logging

我只想logging数据,而不是日志级别,时间戳记等文件。 var logger = new (winston.Logger)({ transports: [ new (winston.transports.File)({ filename: '/tmp/data.log', json : false, timestamp : function() { return ''; } }) ] }); logger.log('info', "a") 它从行中删除时间戳,但日志级别仍然出现。 目前,文件包含“info:a”。 我希望它只logging“一个”。 有没有可能在winston中指定输出格式?

Zombie.js在VirtualBox共享文件夹中缓慢运行

我正在尝试在我的Node.js项目中使用僵尸 。 该项目运行在VirtualBox虚拟机上的共享文件夹中。 当僵尸安装到共享文件夹而不是全局时,我注意到性能的大幅下降。 假设我在zombie_test.js中有以下内容: require("zombie"); 如果我在全球安装僵尸,require语句运行不到一秒钟: $ sudo npm install zombie -g … $ time node zombie_test.js real 0m0.651s user 0m0.464s sys 0m0.116s 如果我在本地安装软件包,则需要6秒钟。 $ npm install zombie –no-bin-links … $ time node zombie_test.js real 0m5.933s user 0m0.992s sys 0m1.424s 速度下降不会发生在我试过的任何其他节点模块上。 这也不会发生,如果我本地NPM安装到虚拟机上的非共享目录。 有人知道为什么这个僵尸减速,或者如果我可以做一些改进呢?

node.jsasynchronous函数的可读性

我明白,我们不应该在node.jsasynchronous函数中返回对象,并且asynchronous函数中的每个path都应该导致callback函数。 为了在一定程度上解决“厄运金字塔”问题,并为了更好的可读性,只要说“回报”就可以了。 在调用callback函数之后,我不必将剩余的代码放在else块中,并跳过缩进并获得更好的可读性。 代码一直工作得很好,但只是想知道是否有任何潜在的问题,我忽略。 (function(database) { var mongodb = require("mongodb"); database.ObjectID = mongodb.ObjectID; var mongoUrl = "mongodb://localhost:27017/mydb"; var dbconn = null; database.getDBConn = function(next){ if(dbconn){ next(null, dbconn); return; } //already connected: return dbconn mongodb.MongoClient.connect(mongoUrl,function(err, database){ if(err){ next(err, null); return; } //connection fail: return error dbconn = {db: database, movies: database.collection("movie") }; next(null, dbconn); //connection success: […]

在WebStorm中使用任意NodeJSunit testing框架进行debugging

我已经分叉了一个NodeJS项目,使用testing任何协议(节点轻拍)。 我正在使用WebStorm 8.0.1 IDE。 我现在想在运行unit testing时进行一步debugging。 由于在Node的世界里Tap看起来很模糊,当然在WebStorm中没有针对这个框架的运行/debuggingconfiguration。 通过使用这些设置configurationNode.js运行configuration,我能够通过IDE运行testing: 节点解释器:C:\ Program Files \ nodejs \ node.exe 节点参数:–debug-brk 工作目录:{我的项目目录} JavaScript文件:node_modules \ tap \ bin \ tap.js 应用参数:test / test – *。js 但是,使用此configuration进行debugging时,我的断点不会被打中。 另外,即使插入一个debugger; 声明不会触发rest。 有没有办法让我在WebStorm中专门运行taptesting? 如果没有,为什么你认为我的testing中的断点没有被击中?

Meteor:xlsx到json的parsing

我正在使用meteor在一个项目中,我需要做一些数据parsing从给定的xlsx文件到json。 其实我想要的东西,我上传一个xlsx文件,它给了我的数据以json的forms。 因为Meteor是一个nodejs框架,所以我尝试了像xlsx,node-xlsx,excel,excel-parser等每个nodejs npm软件包,但Meteor不支持软件包的文件并给出错误。 所以,任何人有任何破解这个或任何解决schemeparsingxlsx文件到JSON没有任何问题,使用meteor。