2017-02-02 7 views

答えて

2

req.options.controllerreq.options.action

1

1は、コントローラ/アクションをログに記録することができます下のと似ミドルウェアは、ミドルウェアがrouter前になると、要求のendイベントにプリントをログインする必要があります試してみてください。

が定義されている場合、静的ファイルの場合404などは定義されていない可能性があります。

middleware: { 

    order: [ 
    ... 
    'logController', 
    'router', 
    ... 
    ], 

    logController: function(req, res, next) { 
    req.on("end", function() { 
     sails.log.info('logController##Options2:', req.options); // This contains controller/action along with other data 
    }); 
    sails.log.info('logController##Options1:', req.options); // undefined 
    next(); 
    }, 
} 

ログ:

RequestLogger##Options1: undefined 
... 
RequestLogger##Options2: { detectedVerb: { verb: '', original: '/', path: '/' }, 
    skipRegex: [], 
    _middlewareType: 'CORS HOOK: sendHeaders', 
    controller: 'user', 
    action: 'list', 
    locals: { layout: 'layout' } } 

要求は、例えば、複数のルートに一致させることができ、覚えて

'/user/list': 'UserController.list', 
'user/:id': 'UserController.detail', 

コントローラは次のマッチングコントローラ/アクションに移動し、その第三の引数next呼び出すことができます。

+0

これによりクエリが解決される場合は、同意してください。 – Sangharsh

関連する問題