socket.IO-objc与AZSocketIO

从其他语言的Socket.IO实现列表中 ,我们可以看到Objective-C有两个替代scheme。 我的问题是关于这两个图书馆的优点和缺点。 socket.IO-objc似乎更完整,并有更好的文档,但我也想知道,如果这些优势足够重要,我的项目select一个或另一个AZSocketIO提供考虑哪些优势。 我真的很感激,如果有人使用其中的一个可以给我一些build议。 谢谢!

崇高的文字2 – 使用Node.js构buildJavaScript

我正在尝试使用Node.js在Sublime Text 2中构build一个Javascript构build系统。 问题是我不知道我的Mac上安装Node.js(我安装了它与Mac安装程序,我正在运行山狮)或如何正确分配一个pathvariables来find它。

任何改变node-sass / libsass精度的方法

我目前正在使用grunt-sass和libsass的node-sass包装器。 是否有改变四舍五入浮点数的精度? 我知道它可以改变ruby,但无法find改变它在libsass。 目前轮到5,但如果我需要给一个行高,这是一个经常性的数字,即1.33333我得到如何转换为像素在屏幕上的小差异。 把它绕到7个地方修好这个。 如果有人设法改变这一点,请让我知道。 提前致谢

如何导出只能在asynchronouscallback中使用的对象?

我有一个db.js文件,我在其中build立了一个MongoDB连接。 我想导出数据库对象到我的主app.js文件中: // db.js require('mongodb').MongoClient.connect(/* the URL */, function (err, db) { module.exports = db; }); // app.js var db = require('./db'); app.get('/', function (req, res) { db.collection(/* … */); // throws error }); 错误是: TypeError:对象#没有方法“集合” 那么,如何正确导出db对象呢?

使用npm命令启动带参数的NodeJS项目

我正在尝试创build两个单独的npm命令来在开发机器上和生产模式下本地启动我的NodeJS项目。 我希望能够将参数分别传递给机器以提供正确的依赖关系 – 可以是生产环境中的CDN或本地机器。 这是我在package.json中看到的 "run": "node ./server/app.js", /* for running locally*/ "start": "node ./server/app.js", /* for running in production*/ 如果我尝试调用npm run – 会产生这个错误: npm ERR! npm run-script [<pkg>] <command> npm ERR! not ok code 0 我也希望能够发送包含URL的命令行参数。

在Node应用程序之间共享代码

我们的应用程序由两个组件组成:API和客户端。 两者都是独立的Node应用程序 尽pipeAPI除了文档之外还没有任何前端组件,它们仍然共享一些常见文件,如Jade组件,规范化CSS,实用程序模块,最重要的是用于MongoDB交互的Mongoose模式和模型定义。 我真的不想习惯于我首先对API进行更改的工作stream程,然后将更改后的文件复制到客户端,反之亦然,所以find一个可行的解决scheme将是非常好的。 跨Node应用程序共享各种代码的最佳方式是什么? 在浏览网页时,我遇到了一些解决scheme,但在这种情况下,他们都没有真正的工作。 一种解决方法是从公共文件中创build一个节点模块,并使其与具有NPM的应用程序保持同步,但是这意味着我(以及未来可能的开发者)必须知道哪些文件是公共模块的一部分,并且需要它们用require('node_modules/mongo/schemas/example.js')代替require('mongo/schemas/example.js') 。 由于假设可能有数百个通用文件,所以不可能记住文件是否通用,特别是对于新的开发者。 另一个解决scheme是制作通用模块的git子模块。 这将是完美的,如果只有我可以包含子模块path的节点的要求path,所以万一没有find所需的文件在预期的位置(例如, mongo/schemas/example.js ),它会看起来在常见的子模块( common/mongo/schemas/example.js )。 这将是非常棒的,因为它将允许覆盖“本地”版本的公共文件。 这有点像Magento的作品。 这里的问题是,Node不允许编辑requirepath(至less,据说在Node 0.5之前是可能的),所以这是一个好消息。 第三种解决scheme是将公共存储库的内容粗暴地合并到应用程序的根目录中。 在这个解决scheme中没有真正不可逾越的问题,但我觉得这是一个不好的做法。 毕竟,这将不可能通过应用程序编辑通用文件,因为没有办法select性地将通用文件推送到通用的git存储库。 所以基本上这个解决scheme只会使工作stream程变得更乏味:对公共文件的所有修改都必须手工复制到公共代码库,然后推送到git remote,然后复制到其他应用程序。 所以这个解决scheme绝对不会为我削减。 看来第二个解决scheme是我唯一的(也是最好的)select,除非你们提出了一个更好的(我真正希望的是:D)。 如果有人知道改变节点需求path的方法,我将非常感激。

与Grunt同时运行`watch`&`nodemon`

我刚刚开始使用Grunt,并希望运行grunt-contrib-watch [GitHub页面]在每次修改文件时使用我的JavaScript(使用grunt-contrib-jshint [GitHub页面] )并运行grunt-nodemon [ GitHub页面] ,同时使用grunt-concurrent [GitHub页面] 。 据我所知(我显然不)我的Gruntfile应该: 默认运行concurrent concurrent运行watch 每次修改文件时, watch都会运行jshint Gruntfile.js module.exports = function (grunt) { grunt.initConfig({ concurrent: { dev: [ 'watch' ], options: { logConcurrentOutput: true } }, jshint: { server: [ '**/*.js', '!node_modules/**/*.js' ], options: { node: true } }, watch: { all: [ '**/*/.js', '!node_modules/**/*.js' ], tasks: [ […]

使用opencv和node比较2个面的相似度

我有openCV和nodejs运行,我的目标是创build一个程序,当它看到它时(已经做到了)拍摄一张人脸照片,然后将该人脸与各种人脸进行比较来查看是否匹配。 我会知道谁的脸是谁在分贝,所以基本上我就知道谁的脸上的网站拍了照片。 我得到了下面的代码来拍摄照片并保存它…但我不知道如何获得测量结果或与另一张脸进行比较,我find了图像比较的例子,但我想我需要面部比较。 var snap = function(){ vid.read(function(err,im){im.detectObject(cv.FACE_CASCADE,{},function(err,faces){ console.log("FACES", faces) if (faces.length == 0){ console.log("No Faces") return false; } var face = faces[0] , ims = im.size() var im2 = im.roi(face.x, face.y, face.width, face.height) /* im.adjustROI( -face.y , (face.y + face.height) – ims[0] , -face.x , (face.x + face.width) – ims[1]) */ im2.save('out.jpg') }) }); […]

bcrypt不安装在Ubuntu上

我试图在Ubuntu安装bcrypt ,但得到以下错误。 我无法正确理解错误消息。 下面是关于同样的问题的一些讨论: https : //github.com/ncb000gt/node.bcrypt.js/issues/90,但仍然没有find解决办法。 我也尝试更新npm( npm install -g npm )并安装bcrypt而没有运气。 isha@isha-ubuntu:~/Documents/xpressnepal$ sudo npm install npm http GET https://registry.npmjs.org/bcrypt/0.7.7 npm http 304 https://registry.npmjs.org/bcrypt/0.7.7 npm http GET https://registry.npmjs.org/bindings/1.0.0 npm http 304 https://registry.npmjs.org/bindings/1.0.0 > bcrypt@0.7.7 install /home/isha/Documents/xpressnepal/node_modules/bcrypt > node-gyp rebuild gyp ERR! configure error gyp ERR! stack Error: "pre" versions of node cannot be installed, […]

如何用gulp.watch使用茉莉花

我试图让我的testing运行,每次我保存一些文件。 这是一口气手表: gulp.task('jasmine', function() { gulp.src('spec/nodejs/*Spec.js') .pipe(jasmine({verbose:true, includeStackTrace: true})); }); gulp.task('watch', function () { gulp.watch(['app/*.js', 'app/!(embed)**/*.js','spec/nodejs/*.js'], ['jasmine']); }); testing例如app / maps.js我创build一个spec / nodejs / mapsSpec.js文件,如下所示: 'use strict'; var maps = require('../../app/maps'); describe('/maps related routes', function(){ it('should …', function(){…} … 如果我更改一个spec文件,一切运行良好,如果我修改app / maps.js文件,更改将触发testing。 如果我再次修改testing是激活的,但修改不起作用。 例如,如果我第二次添加一个console.log('foo'),我将不会看到它,直到我重新启动gulp手表并再次保存它。 所以只有一个茉莉花运行是可以用gulp.watch使用它。 我想这是因为需求被吞噬过程中的nodejscaching。 那我该怎么办?