有什么办法可以在Sails中间件中添加额外的参数?

时间:2018-09-26 12:22:22

标签: express sails.js middleware

我们在Azure身份验证后面有一个Sails应用程序,该应用程序传递带有电子邮件地址的标头。

我需要在所有控制器中将此电子邮件地址用作参数。

我正在尝试在http:// js中间件中添加以下内容。但是我没有收到控制器中预期的参数。

aadAppendUser: function (req, res, next) { //Azure Active Directory append User Email
        sails.log("Requested :: ", req.method, req.url);
        const emailHeader = 'x-ms-client-principal-name';
        req.param.userMail = req.headers[emailHeader];
        sails.log("userMail :: ", req.param.userMail);
        // sails.log('All Params', req.allParams());
        return next();
    }

我还将它添加到了http.js文件中的订单中。

请建议我是否还有其他方法可以实现这一目标。

1 个答案:

答案 0 :(得分:0)

req.params是存在参数的键,req.param是访问这些参数的功能。

请尝试在req.params上进行设置。

此外,req.param也已弃用

req.paramshttp://expressjs.com/en/api.html#req.params

req.paramhttp://expressjs.com/en/api.html#req.param