App 集成
如果您的应用需要发送 TRON 交易,只需修改一处配置即可加入自动能量——把默认节点 URL 替换为您的 Energy-Free Node URL。无需更换 SDK、无需新增依赖、无需额外 API 调用。
您现有代码保持不变,节点会在幕后处理能量。
tronweb.js(JavaScript / Node.js)
一处改动:将 fullHost 设置为您的 Energy-Free Node URL。
const TronWeb = require('tronweb');
const tronWeb = new TronWeb({
fullHost: process.env.TRON_NODE_URL, // https://node.tronagg.ai/YOUR_SECRET_KEY
});
tronWeb.setPrivateKey(process.env.TRON_PRIVATE_KEY);
// Send USDT — energy is purchased automatically before broadcast
const tx = await tronWeb.transactionBuilder.triggerSmartContract(
'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t', // USDT contract
'transfer(address,uint256)',
{},
[
{ type: 'address', value: 'RECIPIENT_ADDRESS' },
{ type: 'uint256', value: 1000000 }, // 1 USDT (6 decimals)
],
tronWeb.defaultAddress.hex
);
const signedTx = await tronWeb.trx.sign(tx.transaction);
const result = await tronWeb.trx.sendRawTransaction(signedTx);
console.log('Transaction ID:', result.txid);
若您已有 tronweb.js 项目,迁移时只需替换 fullHost 值。您现有的 triggerSmartContract、sendRawTransaction 以及合约调用都会自动获得能量。
tronpy(Python)
一处改动:将 fullnode 配置设为您的 Energy-Free Node URL。
from tronpy import Tron
from tronpy.keys import PrivateKey
import os
client = Tron(network='mainnet')
client.conf['fullnode'] = os.environ['TRON_NODE_URL'] # https://node.tronagg.ai/YOUR_SECRET_KEY
priv_key = PrivateKey(bytes.fromhex(os.environ['TRON_PRIVATE_KEY']))
# Send USDT — energy is purchased automatically before broadcast
contract = client.get_contract('TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t') # USDT
txn = (
contract.functions.transfer('RECIPIENT_ADDRESS', 1_000_000)
.with_owner('YOUR_ADDRESS')
.fee_limit(100_000_000)
.build()
.sign(priv_key)
)
result = txn.broadcast().wait()
print('Transaction ID:', result['id'])
其他语言 / 原始 HTTP API
Energy-Free Node 是标准的 TRON 全节点。任何支持 TRON HTTP API 的 HTTP 客户端都能使用——只需更换基础 URL:
# Before (default node)
https://api.trongrid.io
# After (Energy-Free Node)
https://node.tronagg.ai/YOUR_SECRET_KEY
所有标准 TRON API 端点均可使用:
| 端点 | 说明 |
|---|---|
POST /wallet/createtransaction | 创建 TRX 转账 |
POST /wallet/triggersmartcontract | 调用智能合约(TRC20 转账) |
POST /wallet/broadcasttransaction | 广播已签名交易 |
GET /wallet/getaccount | 获取账户信息 |
GET /wallet/getnowblock | 获取最新区块 |
当您以 TRC20 转账调用 broadcasttransaction 时,能量购买会透明进行。
最佳实践
不要把 URL 硬编码到源码中
您的节点 URL 绑定了 TRONAgg 余额,请像对待数据库密码一样保管。
// Good — from environment
const tronWeb = new TronWeb({
fullHost: process.env.TRON_NODE_URL,
});
// Bad — hardcoded
const tronWeb = new TronWeb({
fullHost: 'https://node.tronagg.ai/abc123secret',
});
- 存储在环境变量或密钥管理器中
- 切勿提交到版本控制
- 必要时为开发和生产使用不同的 URL
启用地址白名单
如果您的应用只从固定地址集合发起交易,请在仪表盘中启用地址白名单。这样即使 URL 外泄,也只有您的已知地址能触发能量购买。
监控余额
若 TRONAgg 余额归零,节点仍会广播您的交易——但不附加能量,TRX 会按网络全费率从钱包燃烧。请密切关注仪表盘,避免这种情况。
优雅降级
Energy-Free Node 从不阻止您的交易。余额不足意味着交易仍会被发出,只是不带能量——不会失败。但您将支付更高的燃烧费率(约 6 TRX 而非约 2 TRX),所以请保持余额充足。