跨多个文件共享变量

tommyd456

想知道以下情况下共享变量的“好方法”。

我的server.js文件包括这样的authenticator.js文件:

var authenticator = require('./server/services/authenticator')(app);
app.use(authenticator);

在该authenticator.js文件中,有一个叫做专用密钥变量:

module.exports = function (app) {
  var authenticator = function (req, res, next) {
    //do some stuff here

    var privateKey = 'value from Basic Auth header'

  };
  return authenticator;
};

我的api.js文件现在需要此privateKey变量。

以同样的方式包含了我的api.js文件server.js

var api = require('./server/api')(app);
app.use('/v1', api);

我也想通过类似的方式传递通行证privateKey

var api = require('./server/api')(app, privateKey);

问题:如何使文件中privateKey可用,server.js以便可以将其传递给api.js文件?

harryy000

您可以将其附加到req变量

module.exports = function(app) {
    var authenticator = function(req, res, next) {
        //do some stuff here
        req.privateKey = 'value from Basic Auth header'; //This can be shared accross middlewares.
        next(); //don't forget to call this.
    };
    return authenticator;
};

server.js


var api = require('./server/api')(app);
app.use('/v1', api);

api.js


module.exports = function(api) {
    var api = function(req, res, next) {
        var privateKey = req.privateKey; //this is how we can use it
        //do something with it
        next();
    };
    return api;
};

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

跨多个Shell脚本共享变量

来自分类Dev

跨嵌套文件夹共享变量

来自分类Dev

跨文件共享变量的C ++良好实践?

来自分类Dev

跨多个云代码文件共享功能

来自分类Dev

在C中跨多个文件编译全局变量以创建共享库

来自分类Dev

全局变量?跨多个脚本共享变量?

来自分类Dev

如何创建跨多个操作共享的实例变量

来自分类Dev

C++:与多个文件共享变量

来自分类Dev

跨函数内部共享变量

来自分类Dev

跨多个包共享结构

来自分类Dev

跨多个类的变量

来自分类Dev

Node.js:跨多个文件的全局变量

来自分类Dev

跨WebLogic群集共享文件

来自分类Dev

跨多个文件的结构

来自分类Dev

跨多个文件的IIFE

来自分类Dev

并行读取多个文件并将其存储在共享变量中

来自分类Dev

Node.js-共享在多个文件之间异步创建的变量

来自分类Dev

跨文件共享变量,而无需在Node.js中创建它们的副本

来自分类Dev

跨多个变量的值的频率?

来自分类Dev

跨小部件的多个实例的状态共享

来自分类Dev

是否跨多个进程共享了numpy数组?

来自分类Dev

如何跨多个元素共享注释

来自分类Dev

跨多个文件的朋友功能

来自分类Dev

在gimp中跨文件共享层

来自分类Dev

跨应用程序共享JS文件

来自分类Dev

在gimp中跨文件共享层

来自分类Dev

在多个类别之间共享变量

来自分类Dev

限制跨多个文件的文件上传大小

来自分类Dev

跨R中的多个变量替换值