【问题标题】:SailsJS Log Request ParamsSailsJS 日志请求参数
【发布时间】:2023-03-23 22:52:01
【问题描述】:

所以我的问题是我想将任何请求记录到我的 Sails 应用程序中。基本上我已经解决了一个问题,即我无法记录请求的参数。

myRequestLogger: function(req, res, next) {
            if (sails.config.environment === 'development') {
                console.log('=========================================================');

                console.log("Request :: ", req.method, req.url, req.param);

                console.log('=========================================================');
            }

            return next();
        },

req.allParams() 返回它不是函数并且 req.param(...) 返回未定义。我是否必须在另一个位置上执行此操作?有人知道我做错了什么吗?

布鲁诺

编辑

我在 http.js 中使用默认顺序:

order: [
            'startRequestTimer',
            'cookieParser',
            'session',
            'passportInit',
            'passportSession',
            'myRequestLogger',
            'bodyParser',
            'handleBodyParserError',
            'compress',
            'methodOverride',
            'poweredBy',
            '$custom',
            'router',
            'www',
            'favicon',
            '404',
            '500'
        ]

【问题讨论】:

  • 也试过了......也未定义
  • 它适用于路由类似于/:someparamGET请求
  • 但我想记录每个请求及其参数
  • 您可以尝试req.query 用于路由类型?someparam=req.body 用于帖子正文(确保在body-parser 之后使用路由)

标签: javascript node.js logging request sails.js


【解决方案1】:

找到答案...顺序必须不同。 requestLogger 必须在 bodyParser 之后实现:

order: [
            ...
            'bodyParser',
            'myRequestLogger',
            'handleBodyParserError',
            '...
        ]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-01
    • 2011-03-12
    • 2017-03-14
    • 2018-05-18
    相关资源
    最近更新 更多