Size: a a a

2021 November 04

MD

Microwave Dev in Ethereum Russia
ок, нужно отправлять транзанкции
источник

m

milkiweed in Ethereum Russia
но я похоже разобрался уже в проблеме

// 3. Подключение кошелька к провайдеру
const account = wallet.connect(provider);

это и будет signer`ом
источник

m

milkiweed in Ethereum Russia
а я пытался сформировать его через provider.getSigner()
источник

MD

Microwave Dev in Ethereum Russia
const signer = provider.getSigner(wallet);
источник

MD

Microwave Dev in Ethereum Russia
вот так надо
источник

MD

Microwave Dev in Ethereum Russia
ты пытаешься установить подписантом обычный адрес, а надо полноценный кошелёк
источник

m

milkiweed in Ethereum Russia
я так пытался, но там ожидает просто адрес в виде строки или инта
источник

m

milkiweed in Ethereum Russia
или wallet имеется ввиду просто как адрес кошелька? его тоже прокидывал, с ним ругается как в моем сообщении с проблемой выше :(
источник

MD

Microwave Dev in Ethereum Russia
ну я вот так обычно делаю
источник

MD

Microwave Dev in Ethereum Russia
вспомнил
источник

MD

Microwave Dev in Ethereum Russia
вот ты wallet создаёшь
источник

MD

Microwave Dev in Ethereum Russia
а потом вот так у него делаешь
источник

MD

Microwave Dev in Ethereum Russia
тоесть wallet это уже signer но без провайдера
источник

MD

Microwave Dev in Ethereum Russia
а потом вот так
источник

m

milkiweed in Ethereum Russia
export const provider = new ethers.providers.JsonRpcProvider(settings.bsc.rpcNodeUrl);
export const wallet = new ethers.Wallet(settings.wallet.privateKey, provider)
export const signer = wallet.connect(provider);


то есть вот так?
источник

MD

Microwave Dev in Ethereum Russia
да
источник

m

milkiweed in Ethereum Russia
спасибо
источник

MD

Microwave Dev in Ethereum Russia
а потом
contract.connect(signer).swapExactTokensForTokens(...)
источник

m

milkiweed in Ethereum Russia
спасибо большое!
источник

m

milkiweed in Ethereum Russia
подскажите пожалуйста, почему своп токенов через панкейк работает, а через код нет?)
у меня уже горит люто

Вот пример транзакции через панкейк: https://bscscan.com/tx/0x579ee78b2ffb429e3ec8ee84fcf606eeb805497aaa2709331e41457162a2b105
Точно такая же через код: https://bscscan.com/tx/0x97d3ffb0bc5cb15b03e1890569711ddd2e656c084a06882f9ab10180ed32dacd

Для простоты еще прикрепил скрины декодированной инпут даты
На 1 через панкейк, на 2 точно такое же через мой код

Разница лишь в том что для моей транзакции пишет fail status
В самой транзакции никаких адекватных деталей нет

Разве что внимание привлекает вот эта строчка "contractAddress":null
источник