A través de TonWeb
Enviar transacciones usando la biblioteca TonWeb: SDK de JavaScript para interactuar con la blockchain TON Esta sección contiene una guía para enviar transacciones en la blockchain TON usando tonweb
import TonWeb from "tonweb";
import TonWebMnemonic from "tonweb-mnemonic";
import { TonClient, toNano } from "@ton/ton";
import { DEX, pTON } from "@ston-fi/sdk";
const tonWeb = new TonWeb();
const client = new TonWeb.HttpProvider();
const tonClient = new TonClient({
endpoint: "https://toncenter.com/api/v2/jsonRPC",
});
const mnemonics = Array.from(
{ length: 24 },
(_, i) => `tu palabra mnemónica ${i + 1}`
); // reemplaza con tu mnemónica
const keyPair = await TonWebMnemonic.mnemonicToKeyPair(mnemonics);
const wallet = new tonWeb.wallet.all.v4R2(client, {
publicKey: keyPair.publicKey,
});
const dex = tonClient.open(new DEX.v1.Router());
const txParams = await dex.getSwapTonToJettonTxParams({
offerAmount: toNano("1"), // intercambiar 1 TON
askJettonAddress: "EQA2kCVNwVsil2EM2mB0SkXytxCqQjS4mttjDpnXmwG9T6bO", // para un STON
minAskAmount: toNano("0.1"), // pero no menos de 0.1 STON
proxyTon: new pTON.v1(),
userWalletAddress: (await wallet.getAddress()).toString(),
});
await wallet.methods
.transfer({
secretKey: keyPair.secretKey,
toAddress: txParams.to.toString(),
amount: new tonWeb.utils.BN(txParams.value),
seqno: (await wallet.methods.seqno().call()) ?? 0,
payload: TonWeb.boc.Cell.oneFromBoc(
TonWeb.utils.base64ToBytes(txParams.body?.toBoc().toString("base64"))
),
sendMode: 3,
})
.send();Última actualización