Создать новую учетную запись через IPC

Я хочу создать новую учетную запись через IPC, поэтому я запустил частную цепочку с помощью приведенной ниже команды.

geth --networkid=5 --datadir DataDir --ipcapi "db,eth,net,web3,personal" --ipcpath "/Users/smartSense/.ethereum/geth.ipc"
--rpc -rpcapi "eth,web3" --rpcaddr=localhost --rpcport=8545 --rpccorsdomain "*" console 2>geth.log 

теперь я пытаюсь создать новую учетную запись с помощью web3 API Ref. Ссылка: Ссылка

var options = {
    host: '/Users/smartSense/.ethereum/geth.ipc',
    ipc:true,
    personal: true,
    admin: false,
    debug: false
};

var web3Extended = web3_extended.create(options);
web3Extended.personal.newAccount("password",function(error,result){
        if (!error)
            res.send(result);
        else
            res.send("error"+error);
});

но я получил ошибку ниже:

errorError: Invalid JSON RPC response: "Error: connect ECONNREFUSED 127.0.0.1:80\n    at Object.exports._errnoException (util.js:1022:11)
\n    at exports._exceptionWithHostPort (util.js:1045:20)\n    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1090:14)"

через RPC я успешно создал, но через IPC я получил ошибку, так что у кого-нибудь есть идеи об этом?

Попробуйте использовать этоvar web3 = new Web3(new Web3.providers.IpcProvider('/Users/myuser/Library/Ethereum/geth.ipc', net));

Ответы (1)

Требовать web3_ipcвместо web3_extended.

const web3_extended = require('web3_ipc');

Кроме того, убедитесь, что ваше местоположение geth.ipc указано правильно. Мой (Mac OS X) был в ~/Library/Ethereum/geth.ipc.