使用节点fs从aws s3存储桶中读取文件

我试图读取aws s3存储桶中使用的文件 fs.readFile(file, function (err, contents) { var myLines = contents.Body.toString().split('\n') }) 我已经能够使用节点aws-sdk下载和上传一个文件,但是我不知道如何简单地阅读和parsing内容。 这里是我从s3读取文件的一个例子: var s3 = new AWS.S3(); var params = {Bucket: 'myBucket', Key: 'myKey.csv'} var s3file = s3.getObject(params)

要求返回一个空的对象

我有一个文件夹,它有index.js和一些模型(类)index.js module.exports = { Book : require('./book'), Author : require('./author') } book.js var Author = require('./author') var Book = models.ActiveRecord.extend({ schema : { belongsTo : { author : Author } } }) module.exports = Book author.js var Book = require('./book') var Author = models.ActiveRecord.extend({ schema : { hasMany : { author : Book } } […]

用Sinon.js保存一个类的方法

我正在尝试使用sinon.js存根方法,但是我得到以下错误: Uncaught TypeError: Attempted to wrap undefined property sample_pressure as function 我也去了这个问题( 在sinon.js中对stubbing和/或嘲笑类 ),并复制粘贴代码,但我得到了同样的错误。 这是我的代码: Sensor = (function() { // A simple Sensor class // Constructor function Sensor(pressure) { this.pressure = pressure; } Sensor.prototype.sample_pressure = function() { return this.pressure; }; return Sensor; })(); // Doesn't work var stub_sens = sinon.stub(Sensor, "sample_pressure").returns(0); // Doesn't work var […]

带有下划线sortBy的对象sorting数组

我有这个数组。 如何使用下划线“_.sortBy”按照开始date对其进行sorting? [ { id: 'oljw832021kjnb389xzll323jk', start: { dateTime: '2013-09-26T13:30:00-07:00' }, end: { dateTime: '2013-09-26T14:30:00-07:00' }, }, { id: 'ed7l5tmckdp0lm90nvr4is3d4c', start: { dateTime: '2013-09-26T15:30:00-07:00' }, end: { dateTime: '2013-09-26T16:30:00-07:00' }, }, { id: 'etmasdsackdp0kjl0nvrkopioqw', start: { dateTime: '2013-09-26T18:00:00-07:00' }, end: { dateTime: '2013-09-26T19:00:00-07:00' }, } ]

为什么node.js一次只处理六个请求?

我们有一个node.js服务器,它实现了一个REST API作为一个中央服务器的代理,这个中央服务器有一个稍微不同的,不幸的不对称的REST API。 我们的客户端运行在各种浏览器中,要求节点服务器从中央服务器获取任务。 节点服务器从中央服务器获得所有任务ID的列表并将其返回给客户端。 然后,客户端通过代理为每个ID创build两个REST API调用。 据我所知,这些东西都是asynchronous完成的。 在控制台日志中,当我启动客户端时,它看起来像这样: Requested GET URL under /api/v1/tasks/*: /api/v1/tasks/ 这需要几秒钟才能从中央服务器获取列表。 一旦得到响应,服务器就会很快地把这个消息发送出去: Requested GET URL under /api/v1/tasks/id/:id :/api/v1/tasks/id/438 Requested GET URL under /api/v1/workflow/id/:id :/api/v1/workflow/id/438 Requested GET URL under /api/v1/tasks/id/:id :/api/v1/tasks/id/439 Requested GET URL under /api/v1/workflow/id/:id :/api/v1/workflow/id/439 Requested GET URL under /api/v1/tasks/id/:id :/api/v1/tasks/id/441 Requested GET URL under /api/v1/workflow/id/:id :/api/v1/workflow/id/441 然后,每当有一对这样的请求得到中央服务器的结果时,另外两条线就会很快被删除。 所以看来我们的node.js服务器只愿意一次发出六个请求。

在Jade中创build内联元素的简明方法是什么?

我喜欢将所有内联元素放在一行中。 <ul> <li><a>click<span>here</span><strong>!</strong></a></li> 想知道是否有更好的方式在Jade中创build内联元素: ul li a(href="#") click span here strong ! 这有点接近,但我不知道如何添加跨度和强大的标签没有断线。 ul li: a(href='#') click span … 这显然不是一个超级大的问题,但有点烦人,我不能把内联元素内联。 谢谢您的帮助

节点JS Promise.all和forEach

我有一个像暴露asynchronous方法结构的数组。 asynchronous方法调用返回数组结构,依次公开更多的asynchronous方法。 我正在创build另一个JSON对象来存储从这个结构获得的值,所以我需要注意跟踪callback中的引用。 我已经编写了一个powershell解决scheme,但我想学习一个更习惯或干净的解决scheme。 该模式应该是可重复的n层嵌套。 我需要使用promise.all或一些类似的技巧来确定何时解决封闭的例程。 并不是每个元素都必然会涉及到一个asynchronous调用。 所以在一个嵌套promise.all我不能简单地分配给我的基于索引的JSON数组元素。 不过,我确实需要在嵌套的forEach中使用promise.all之类的东西,以确保在parsing封装程序之前完成所有属性分配。 我正在使用蓝鸟许诺lib,但这不是一个要求 这是一些部分代码 – var jsonItems = []; items.forEach(function(item){ var jsonItem = {}; jsonItem.name = item.name; item.getThings().then(function(things){ // or Promise.all(allItemGetThingCalls, function(things){ things.forEach(function(thing, index){ jsonItems[index].thingName = thing.name; if(thing.type === 'file'){ thing.getFile().then(function(file){ //or promise.all? jsonItems[index].filesize = file.getSize();

如何在javascript / Node.js中获取一天的时间?

我想得到1到 24,1太平洋时间凌晨1点。 我怎样才能得到Node.JS这个数字? 我想知道现在太平洋时间是几点。

node.js多房间聊天的例子

我正在寻找一个支持多个房间的websocket / node.js聊天实现。 我也将写一个需要多个房间或服务器的应用程序,我只是在寻找一些人们如何做的代码示例。 谢谢。 我知道有一个服务http://pusherapp.com提供这项服务,但我正在寻找一个开源的例子。

grunt“test command”在npm init上做了什么?

我正在努力学习咕噜声。 当我运行npm init时,在创build一个package.json文件的过程中,我得到一个提示,要求input“test command” – 我不知道如何利用它,或者期望什么。 这似乎没有很好的文件。 如果我把它留空,我在得到的package.json文件中得到这个: "scripts": { //"test": "echo \"Error: no test specified\" && exit 1" }, 任何人都可以阐明如何设置testing脚本?