4

抱歉,我的问题不够清晰,我将在这里尝试解释我的意思。

我有一些现有的代码可以有效地充当不同网络之间的桥梁(使用不同的协议)。网桥在运行时连接的网络可能会发生变化,并且在运行前无法知道网络的类型。所以我需要编写一些可以在运行时有效地请求、下载、“安装”和运行“驱动程序”而无需重新启动的东西。这可能吗?

我对 node.js 完全陌生,因此我正在尝试解决是否可能,否则我将不得不将代码移植到我已经拥有的 Java OSGi 中(由其他人编写)。

4

1 回答 1

3

如果驱动程序是 node.js 模块,您可以将它们放在 npm 存储库中并通过 npm 以编程方式安装:

var npm = require('npm');

function install (module, callback) {
    npm.load({ 
        save : true,
        loglevel : 'silent'
    }, function (err) {
        if (err) return callback(err);
        npm.commands.install([module], callback);
    })
}

install('express', function (err) {
    if (err) throw err;
    console.log('Installed!');
});

不幸的是,这个 API 没有很好的文档记录(几乎根本没有文档记录),所以你必须稍微修改一下才能显示可用的选项。

于 2013-10-30T21:59:21.993 回答