通过PC路由器购买的一个非常简单的javascript。它的工作,除了当我试图去高于10的加斯普里斯。这总是导致交易失败,并收取gasprice x gaslimit的最大成本。gasprice_u和gaslimit通过提示符获得,因此可以更改。
const WBNB2swap= ethers.utils.parseEther(amount_BNB).toHexString();
// for some reason chokes on gas over 10... it fails and spits out massive errors and then charges the entire sum contributed
const gasPrice__ = ethers.utils.parseUnits(gasPrice_, 'gwei');
const gas = { gasPrice: gasPrice__, gasLimit: gasLimit_ }
// create an instance to wallet
const mnemonic = seed;
const provider = new ethers.providers.WebSocketProvider('wss://bsc-ws-node.nariox.org:443');
const walletIns = ethers.Wallet.fromMnemonic(mnemonic);
const account = wallet.connect(provider);
// interact with the router
const router = new ethers.Contract(
addresses.router,
[
"function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts)"
],
account
);
const buy = async (token) => {
const tx = await router.swapExactETHForTokens(
0,
[addresses.WBNB, token],
addresses.target,
Math.floor(Date.now() / 1000) + 60 * 10,
{
...gas,
value: WBNB2swap
}
);
暂无答案!
目前还没有任何答案,快来回答吧!