Я не уверен, почему вы хотите два экземпляра HttpProvider. Но я думаю, что решение может быть не два экземпляра поставщиков, но два Web3 объектов, например, так:
let Web3 = require('web3');
let web3 = {};
let web3.a = new Web3(new Web3.providers.HttpProvider("http://localhost:9998");
let web3.b = new Web3(new Web3.providers.HttpProvider("http://localhost:9999");
И за то, что вам нужно, вы либо использовать поставщик .a
или .b
:
window.console.log(web3.a.version.node);
window.console.log(web3.b.version.node);
Или проверить, какой один подключен:
if(web3.a.isConnected()) {
/* work with node a */
else if(web3.b.isConnected()) {
/* work with node b */
} else {
/* remind yourself to start a node */
}
код выше не тестировался, но вы можете получить идею.