Articles of node.js

Node.js如何将gzipstreampipe道写入stream

我似乎无法得到这个工作。 我想写一些数据到gzipstream,然后pipegzipstream到一个文件写入stream。 我想在文件完成写入时调用函数。 我目前有: var gz = zlib.createGzip() .pipe(fs.createWriteStream(gz_path)); gz.write(data); gz.on('error', function(err){ console.log("wtf error", err); }); gz.on('finish', function(){ console.log("write stream is done"); dosomething(); }); 结束事件或错误事件永远不会被调用。

将可变长度数组传递给Node JS

有没有办法调用一个可变长度的插件函数。 我把用户input变成一个看起来像的variables Uinput = [5,3,2]; 现在我想打电话给我的插件基于这些数字,所以它会 addon.myaddon(5,3,2); 我也想扩展到n个input,所以如果我的variables的用户input成为 Uinput = [5,3,2,6,…,n]; 那么插件就会被调用 addon.myaddon(5,3,2,6,…,n); addon.myaddon(Uinput) // will not seperate the inputs by commas are they are in the array variable, it treats the whole array as the input 这似乎很简单,但它给我一些麻烦。 有小费吗 ?

Express布局错误 – variables未定义

我正在使用express-ejs-layouts,并在控制台日志中看到以下错误: >> 5| <title><%= title %></title> title is not defined 我确实在我的layout.ejs文件中定义了以下元素: <title><%= title %></title> 我从我的一个path文件中填充这个variables: router.get('/', function(req, res) { res.render('index', { title : 'Express' }); }); 任何想法我失踪? 谢谢!

OpenShift从另一个设备访问MySQL

我在OpenShift有两个应用程序。 一个正在运行一个MySQL磁带的可销售的PHP设备。 另一个是node.js的齿轮。 我如何从node.js访问这个MySQL数据库

testing蓝鸟承诺与Nodejs誓言(BDD)

我遇到了一些问题,比如如何正确构build我的Promise返回API的testing topic:function() { return myfunc() { /* returns a Bluebird Promise */ } }, 'this should keep its promise':function(topic) { var myfunc = topic; myfunc() .then(function(result) { assert(false); }) .catch(function(error) { assert(false); }) .done(); } 我的誓言永远不会失败。 这是我第一次尝试使用誓言来testing承诺。 希望有人熟悉这一点会伸出援助之手。 提前,谢谢。 恩里克

我试着用'temp'和'fs'模块来使用browserify,我得到的只是这个糟糕的错误

我正在尝试迁移节点项目以在浏览器中运行。 该项目(从来不知道这一刻的原因)写入临时文件,使用临时代码类似于这样的代码: var temp = require('temp'); var fs = require('fs'); temp.open('helloworld.txt', function (err, info) { if (err) { console.log('Failed to open a temp file:', err); return; } console.log('temp: ', info.path); fs.writeFile(info.path, 'Hello World!', function (err2) { if (err2) { console.log('Failed to write to a temp file:', err2); return; } }); }); 当运行browserified代码时,我得到以下错误: Uncaught TypeError:undefined不是一个函数 对于以下行: […]

MongoDB使用Node.js获取集合中文档的数量(计数)

我目前正在写一个函数,应该返回一个集合文件的数量,当我返回的值说undefined,这是我的代码: var MongoClient = require('mongodb').MongoClient; // open the connection the DB server var dbName = "ystocks"; var port = "27017"; var host = "localhost"; var tt = "mongodb://" + host + ":" + port + "/" + dbName; //"mongodb://localhost:27017/ystocks" function getNumOfDocs (collectionName, host, port, dbName) { var tt = "mongodb://" + host + ":" + […]

Azure表存储性能

我应该以多快的速度期待Azure存储的性能? 我在getEntity,updateEntity等基本操作上看到〜100ms。 这家伙似乎正在得到4ms,这使得这里看起来真的是错了! http://www.troyhunt.com/2013/12/working-with-154-million-records-on.html 我正在使用azure-table-node npm插件。 https://www.npmjs.org/package/azure-table-node 一个简单的getEntity调用需要~90ms: exports.get = function(table, pk, rk, callback) { var start = process.hrtime(); client().getEntity(table, pk, rk, function(err, entity) { console.log(prettyhr(process.hrtime(start))); … azure色的存储模块似乎更慢: https://www.npmjs.org/package/azure-storage var start = process.hrtime(); azureClient.retrieveEntity(table, pk, rk, function(err, entity) { console.log('retrieveEntity',prettyhr(process.hrtime(start))); … retrieveEntity 174 ms

Metalsmith.js:如何构build到与构build脚本相同的目录?

我对Metalsmith完全陌生。 我一直在关注这个教程: http : //www.robinthrift.com/posts/metalsmith-part-1-setting-up-the-forge/ 我想build立我的网站到我的项目的根目录(与生成脚本相同的目录)。 我想要做到这一点,因为我希望github页面可以很好地播放它。 但是当我尝试构build时,我得到这个错误:错误:EBUSY,资源忙或locking 这是我的dir结构: project_folder / _site-SRC / 的index.html node_modules build.js 的package.json 这里是我的build.js源代码: var Metalsmith = require("metalsmith"); Metalsmith(__dirname) .source("_site_src") .destination(".") .build(); 我想让我的项目目录看起来像: project_folder / _site-SRC / 的index.html node_modules build.js 的package.json 的index.html 我不知道我在做什么错。 我感谢任何帮助。

nodejs – 如何更改文件的创build时间

fsStat类实例返回mtime,atime和ctimedate对象,但似乎只有API才能更改mtime和atime(最后修改和访问我猜)。 我如何更改创build时间来创build文件的精确副本,因为它也会创build与原始副本相同的时间?