Мне нужно вызывать методы из моего контракта в Ethereum без использования MetaMask.Я использую Infura API и пытаюсь вызвать мои методы из учетной записи, недавно созданной с помощью метода web3.eth.create ().Этот метод возвращает объект, подобный этому:
{
address: "0xb8CE9ab6943e0eCED004cG5834Hfn7d",
privateKey: "0x348ce564d427a3311b6536bbcff9390d69395b06ed6",
signTransaction: function(tx){...},
sign: function(data){...},
encrypt: function(password){...}
}
Я также использую провайдера infura:
const web3 = new Web3(new Web3.providers.HttpProvider(
"https://rinkeby.infura.io/5555666777888"
))
Итак, когда я пытаюсь написать что-то вроде этого:
contract.methods.contribute().send({
from: '0xb8CE9ab6943e0eCED004cG5834Hfn7d', // here I paste recently created address
value: web3.utils.toWei("0.5", "ether")
});
У меня есть эта ошибка:
Ошибка: адрес «от» не указан ни в указанных параметрах, ни в параметрах по умолчанию.
Как это может быть не из адресаесли я напишу это в опции from
??
PS С Metamask мое приложение работает нормально.Но когда я выхожу из MetaMask и пытаюсь создать новую учетную запись и использовать ее, у меня возникает эта проблема.