SDK库的多租户配置数据

时间:2016-08-23 22:53:50

标签: javascript node.js configuration sdk multi-tenant

此问题建立在answer到之前的question之上,我正在寻找一种解决方案,在不使用Factory模式的情况下在系统(SDK)的actor(nodejs模块)之间共享配置数据。

这次我需要通过为不同的SDK实例提供不同的配置数据来制作SDK多租户。

app.js

var SDKAcctA = require("./sdk");
SDKAcctA.config = {key: "key", secret: "secret"};

var SDKAcctB = require("./sdk");
SDKAcctB.config = {key: "key2", secret: "secret2"};

// use both of them concurrently without each one overriding the config data of the other

var mA = new SDKAcctA.M1();
mA.doSomething();

var mB = new SDKAcctB.M1();
mB.doSomething();

sdk.js

var SDK = function(){};

SDK.config = {key: null, secret: null};

module.exports = SDK;

require("./m1"); //executing other modules to make it work

m1.js

var SDK = require("./sdk");

var M1 = function(){};

M1.prototype.doSomething = function(){
    var config = SDK.config //getting access to main module's config data
};

SDK.M1 = M1;

问题:

现在配置数据被另一个实例覆盖,这就是问题所在。请指教。

0 个答案:

没有答案