发送第一笔交易

用 TronWeb 在 Shasta 测试网上生成账户、领取测试 TRX、签名并广播第一笔 TRX 转账。

📘

前置阅读

本文带你在 Shasta 测试网上发起第一笔 TRX 交易:安装 TronWeb、生成测试账户、领取测试 TRX、构造并签名交易、广播到网络,最后在 TRONSCAN 上验证结果。全程约 10 分钟。

💡

只想要代码? 移步 recipe 版本——同样的流程,压缩成可直接复用的代码片段,附资源成本摘要和常见错误对照表。


第一步 — 安装 TronWeb

新建项目目录并安装 TronWeb(TRON 的 JavaScript SDK,定位类似以太坊生态中的 web3.js):

mkdir tron-hello && cd tron-hello
npm init -y
npm install tronweb

第二步 — 生成密钥对

每个 TRON 账户 都由一个私钥控制。生成一对新的密钥:

const { TronWeb } = require('tronweb');

// 生成随机账户
const account = TronWeb.utils.accounts.generateAccount();
console.log('Address (Base58):', account.address.base58);
console.log('Private Key:', account.privateKey);
// 务必妥善保存,后续步骤要用

第三步 — 领取测试网 TRX

打开水龙头,粘贴上一步生成的 Base58 地址申请测试 TRX。整个流程需要约 11 TRX:10 TRX 用于转账,其余少量备用。当天免费带宽耗尽后,网络会燃烧少量 TRX 支付带宽成本。


第四步 — 转账 10 TRX

新建 send.js

const { TronWeb } = require('tronweb');

const tronWeb = new TronWeb({
  fullHost: 'https://api.shasta.trongrid.io',
  privateKey: 'YOUR_PRIVATE_KEY'  // 来自第二步
});

async function sendTrx() {
  const to = 'TJRabPrwbZy45sbavfcjinPJC18kjpRTv8'; // 任意有效地址
  const amount = 10 * 1_000_000; // 10 TRX,以 sun 为单位(1 TRX = 1,000,000 sun)

  // 构造 → 签名 → 广播
  const tx = await tronWeb.transactionBuilder.sendTrx(to, amount);
  const signed = await tronWeb.trx.sign(tx);
  const result = await tronWeb.trx.sendRawTransaction(signed);

  console.log('Transaction ID:', result.txid);
  console.log('Success:', result.result);
}

sendTrx();

执行:

node send.js
# 输出:Transaction ID: 5f3e4e0a... Success: true

第五步 — 在 TRONSCAN 验证

打开 https://shasta.tronscan.org/#/transaction/<YOUR_TX_ID>,页面会展示发送方、接收方、金额(10 TRX)和确认状态。TRON 约 3 秒生成一个区块,因此交易通常能很快看到首次确认。


Java 版本(Trident SDK)

import org.tron.trident.core.ApiWrapper;

public class SendTrx {
    public static void main(String[] args) throws Exception {
        ApiWrapper client = ApiWrapper.ofShasta("YOUR_PRIVATE_KEY");
        var tx = client.transfer("SENDER_ADDRESS", "RECIPIENT_ADDRESS", 10_000_000L);
        var signed = client.signTransaction(tx);
        String txid = client.broadcastTransaction(signed);
        System.out.println("Transaction ID: " + txid);
    }
}

底层链路解析

  1. 构造:TronWeb 拼装出一笔 TransferContract 交易,属于 TRON 系统合约类型之一。
  2. 签名:使用私钥生成 ECDSA(secp256k1)签名。
  3. 广播:已签名交易通过 HTTP API 提交到全节点。
  4. 打包超级代表(SR) 将其纳入下一个区块(约 3 秒)。
  5. 资源成本:简单转账只消耗带宽(Bandwidth),不消耗能量(Energy)。每个账户每天免费获得 600 带宽,一笔典型 TRX 转账约消耗 270 带宽,当天前一两笔通常不需要燃烧 TRX。

下一步


相关资源