Tag: node.js

如何从数据事件中取消HTTP上传?

鉴于这个简单的Web服务器代码: console.log('starting'); var server = require('http').createServer(); server.on('connection',function(socket){console.log('*server/connection');}); server.on( 'request', function(request, response){ console.log('*server/request'); request.on( 'data', function(chunk){ console.log('*request/data'); // <!> How do I abort next data calls from here? } ); request.on( 'readable', function(chunk){ console.log('*request/readable'); // <!> How do I abort next readable calls from here? } ); request.on( 'end', function(){ console.log('*request/end'); response.writeHead(200,"OK"); response.write('Hello'); response.end(); } ); […]

如何在PC上本地testingFirebase的云端function

今天,Firebase发布了其全新的Firebase云端function ,我刚刚创build了一个Hello Worldfunction,并将其部署到我现有的Firebase项目中。 它看起来像捆绑所有的依赖关系,并将其上传到firebase,就像aws lambda函数一样。 但即使对代码进行细微的更改,也需要花费太多的时间来完成,并且还需要良好的互联网连接。 如果您由于某种原因而处于脱机状态,那么您只是在黑暗中编写了哪些代码,直到您有方法在本地计算机上脱机执行和testing这些function。 有没有办法在本地testingFirebase的云端函数?

监控所有的JavaScript对象属性(魔术获得者和设置者)

如何在JavaScript中模拟PHP风格的__get()和__set()魔术getter / setters? 很多人都说这是不可能的。 我几乎可以肯定,这是可能的,因为像nowjs( http://nowjs.com )这样的项目做这样的事情。 我知道你可以利用get和set ,但是当你不确定属性的名字是什么时,这些不起作用。 例如, 如果您想要在创build新属性时执行事件处理程序,该怎么办? 我想要做的例子: var obj = {}; notify(obj, function(key, value) { //key is now the name of the property being set. //value is the value of the property about to be set console.log("setting " + key + " to " + value); }); obj.foo = 2; […]

node.js – 使用gzip / deflate压缩的简单http请求

我想弄清楚如何轻松发送HTTP / HTTPS请求,并处理gzip /压缩响应与cookies。 我发现最好的是https://github.com/mikeal/request处理除压缩之外的所有内容。 有没有一个模块或方法可以满足我所要求的一切? 如果没有,我可以以某种方式结合请求和zlib吗? 我试图结合zlib和http.ServerRequest,它失败了。 谢谢!

ExpressJS:如何使用参数redirectPOST请求

我需要将我的node.js服务器的所有POST请求redirect到远程服务器。 我尝试了以下操作: app.post('^*$', function(req, res) { res.redirect('http://remoteserver.com' + req.path); }); redirect工作,但没有POST参数。 我应该修改什么来保持POST参数?

如何从节点服务器发送Firebase云消息传递?

有什么办法从一个node.js服务器发送FCM通知? 我没有发现任何关于它在文档内。

在NodeJS中获取Mongo数据库中插入文档的_id

我使用NodeJS在MongoDB中插入文档。 使用collection.insert我可以像这样的代码中插入一个文档到数据库中: // … collection.insert(objectToInsert, function(err){ if (err) return; // Object inserted successfully. var objectId; // = ??? }); // … 我怎样才能得到插入对象的_id ? 有没有办法让_id没有获取最新的对象_id ? 假设在同一时间很多人访问数据库,我不能确定最新的ID是插入对象的ID。

如何在Express中使用HTML作为视图引擎?

我尝试从种子这个简单的变化,并创build相应的.html文件(如index.html)。 //app.set('view engine', 'jade'); app.set('view engine', 'html'); 这个文件保持不变: exports.index = function(req, res){ res.render('index'); }; 但运行时我得到 500错误:找不到模块'html' 我唯一的select是使用“ejs”吗? 我的意图是与AngularJS结合使用纯HTML。

我可以使用ES6的箭头函数语法与发电机? (箭头符号)

即我如何expression这一点: function *(next) {} 与箭头。 我已经尝试了所有我能想到的组合,而且我也找不到任何文档。 (目前使用节点v0.11.14)

Node.js原生Promise.all是并行还是顺序处理?

我想澄清这一点,因为文件不太清楚; Q1: Promise.all(iterable)是顺序还是并行处理所有的promise? 或者更具体地说,它就像运行链式承诺一样 p1.then(p2).then(p3).then(p4).then(p5)…. 还是其他types的algorithm,其中所有p1 , p2 , p3 , p4 , p5等被同时调用(并行),并且一旦所有parsing(或一个拒绝)就返回结果? 问题2:如果Promise.all并行运行,有没有一种方便的方法来按顺序运行一个迭代器? 注意 :我不想使用Q或Bluebird,但所有原生ES6规格。