Skip to Content
dApps

Crear una transacción

Crea un objeto de transacción con near-api-js ; también ofrecemos funciones auxiliares para obtener el nonce y el hash del bloque más reciente que requiere el constructor de transacciones.

import * as nearAPI from "near-api-js"; // must equal to provider connected account const sender = 'c3be856133196da252d0f1083614cdc87a85c8aa8abeaf87daff1520355eec53'; // must equal to provider connected account const publicKey = 'ed25519:EB6zw1gAr4hV6NHuk9rhFPR8m8MwJbyqvZaweXiTNZ2J'; const receiver = 'c3be856133196da252d0f1083614cdc87a85c8aa8abeaf87daff1520355eec53'; const amount = nearAPI.utils.format.parseNearAmount('0.0001'); const actions = [nearAPI.transactions.transfer(amount)]; const accessKey = await provider.request({ method: 'query', params: { request_type: 'view_access_key', finality: 'final', account_id: sender, public_key: publicKey, } }); // nonce increase 1 const nonce = accessKey.nonce + 1; const recentBlockHash = nearAPI.utils.serialize.base_decode( accessKey.block_hash ); const publicKeyBytes = nearAPI.utils.PublicKey.fromString(publicKey); const transaction = nearAPI.transactions.createTransaction( sender, publicKeyBytes, receiver, nonce, actions, recentBlockHash, );

Como alternativa, usa provider.createTransaction para obtener la cuenta conectada, el nonce de la clave de acceso y el hash del bloque.

const receiver = 'c3be856133196da252d0f1083614cdc87a85c8aa8abeaf87daff1520355eec53'; const amount = nearAPI.utils.format.parseNearAmount('0.0001'); const actions = [nearAPI.transactions.transfer(amount)]; const transaction = await provider.createTransaction({ receiverId: receiver, actions, // nonce increase 1 nonceOffset: 1, });
Última actualización el