Nethereum не будет отправлять платежи в ETH c #
Это одна из тех проблем, из-за которых мне хочется ударить клавиатурой по лицу.
Я кодировал бота, который принимает криптовалютные платежи, чтобы обновлять баланс пользователя. Проверка баланса в порядке, отлично работает.
когда он запускает команду проверки, чтобы проверить, есть ли положительный баланс, ему необходимо перевести этот баланс в другой кошелек.
Я использую два адреса, из которых я контролирую оба закрытых ключа для тестирования. Я пополнил ETH на 5 долларов.
Когда он запускает команду отправки транзакции, я получаю следующие ошибки:
1/2 внутреннего исключения
HttpRequestException: невозможно установить соединение, потому что целевая машина активно отказалась от него.
2/2 внутреннее исключение
SocketException: невозможно установить соединение, потому что целевая машина активно отказалась от него.
Вот метод, который я использую:
private static async void check(String id)
{
string[] data = readdata(id);
var publicKey = data[2];
var privateKey = data[3];
var web3 = new Nethereum.Web3.Web3("https://mainnet.infura.io/v3/APIKEY");
var txCount = web3.Eth.Transactions.GetTransactionByHash.SendRequestAsync(publicKey);
var balance = web3.Eth.GetBalance.SendRequestAsync(publicKey);
var etherAmount = Web3.Convert.FromWei(balance.Result);
Console.WriteLine(etherAmount);
var account = new Account(privateKey);
var web33 = new Web3(account);
var toAddress = "0xEee945DE85Af571940324De312D5077843767A1F";
var transaction = await web33.Eth.GetEtherTransferService().TransferEtherAndWaitForReceiptAsync(toAddress, 1.11m);
Console.WriteLine(transaction.Status);
}
Заранее спасибо за спасение моей программы, клавиатуры и лица.
РЕДАКТИРОВАТЬ:
для всех, у кого такая же проблема, я решил ее, снова указав RPC на infura, как верхний, я не знал, что ему нужно либо запустить локальный узел, либо указать на внешний api
я решил это так:
var web33 = new Web3(account, "https://mainnet.infura.io/v3/APIKEY
1 ответ
Решение OP перешло от вопроса к ответу:
Я решил эту проблему, снова указав RPC на infura, как в верхнем, я не знал, что он должен был либо запускать локальный узел, либо указывать на внешний API:
var web33 = new Web3(account, "https://mainnet.infura.io/v3/APIKEY