[ Expressjs ]开裂螺母,覆盖 res.send

[ Expressjs ]开裂螺母,覆盖 res.send

原文:https://medium.com/hackernoon/nodejs-express-js-manipulating-response-before-going-back-to-user-5e96ad8d84ca

Express.js 是坚果的外壳,它具有良好的架构和基本的受保护功能,其中的逻辑是坚果的新鲜,它赋予了坚果味道,使坚果与众不同。

我是 Express.js 的忠实粉丝,已经在许多项目中使用它,我最喜欢的部分是中间件模式和路由器设计,它们减轻了构建 HTTP 服务器的痛苦。

我的老板昨天给了我一个特写:

“彼得,我们需要一个东西来监控应用程序中的用户行为。” “我觉得 GA 已经加在 APP 里了?” “我们需要来自用户的更多细节,但它们没有存储在 GA 中(像资金流),GA 有一个缺点,不容易做搜索。” “我明白了,需要一个模块来存储每个请求的每一个细节(GET、POST、PUT)*,一个日志模块来记录和监控,当错误或异常发生时,至少我们可以从记录中找到原因。”*

最好的解决方案是操作 res.send( ) 函数,只需几行程序:

*var express = require(‘express’) 
var app = express()

// Overwrite res.send
app.use(function(req, res, next) {
 ***var temp = res.send
    res.send = function() {
        console.log(‘do something..’);
        temp.apply(this,***arguments***);
    }
    next();***
})app.get(‘/’, function (req, res) {
res.send(‘Hello World!’)
})*

*#拜 【Javascript】override object . constructor() 【Expressjs】将 IP 放入黑名单*

*喜欢这个故事?对别人有帮助吗?这有助于我知道你是否想看到更多关于他的话题,并有助于人们看到这个故事, 当点击下面的心 。*

参考:

http://stack overflow . com/questions/27885425/express-middleware-before-response-is-to-client

https://github . com/wahengchang/JavaScript-must-know/blob/master/middleware overwrite RES . send/app . js

黑客中午是黑客如何开始他们的下午。我们是 @AMI 家庭的一员。我们现在接受投稿,并乐意讨论广告&赞助机会。

如果你喜欢这个故事,我们推荐你阅读我们的最新科技故事趋势科技故事。直到下一次,不要把世界的现实想当然!


本站为非盈利网站,作品由网友提供上传,如无意中有侵犯您的版权,请联系删除