调用TRON的RPC方法

使用exchange.IO()函数调用TRON的RPC方法。对于需要签名的方法,底层已经自动封装了签名操作。这里列举一些常用方法,其余方法可以具体查阅TRON官方项目资料。 - GetAccount

  exchange.IO("api", "tron", "GetAccount", "TKCG...")   // "TKCG..."是TRON钱包地址,该函数返回"TKCG..."地址的账户信息。
  • GetAccountResource
    
    exchange.IO("api", "tron", "GetAccountResource", "TKCG...") // 获取指定钱包地址的资源,包括能量和带宽。
    
  • GetContractABI
    
    exchange.IO("api", "tron", "GetContractABI", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t")  // 拉取 USDT TRC20合约ABI
    
  • GetAssetIssueByName
    
    exchange.IO("api", "tron", "GetAssetIssueByName", "TRX")  // 根据token名称获取token资产信息
    
  • GetNowBlock
    
    exchange.IO("api", "tron", "GetNowBlock")   // 获取当前区块信息
    
  • GetBlockByNum
    
    exchange.IO("api", "tron", "GetBlockByNum", 70624300)
    
  • GetTransactionByID
    
    exchange.IO("api", "tron", "GetTransactionByID", "05a8fae2cd1cbf36b61d12e219588d25b4826436f055f93388a96e620ec3f3f2")   // 根据具体哈希值获取Transaction
    
  • TRC20ContractBalance js exchange.IO("api", "tron", "TRC20ContractBalance", "TKCG...", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t") // 获取钱包 USDT 的余额,注意数据是没有经过精度处理的可读数据,例如返回的数据为:6890251,即6.890251 USDT
    
    
  • TriggerConstantContract
    
    function main() {
      let ret = exchange.IO("api", "tron", "TriggerConstantContract", "", "TSUUVjysXV8YqHytSNjfkNXnnB49QDvZpx", "token0()", "")  // 调用某个智能合约的token0()方法,TriggerConstantContract用于调用read方法
      let data = exchange.IO("decode", "address", Encode("raw", "raw", "hex", ret["constant_result"][0]))                        // 解码数据
      return data                                                                                                                // data: 0x891cdb91d149f23b1a45d9c5ca78a88d0cb44c18                  
    }
    
  • TRC20Call
    
    function main() {
      let ret = exchange.IO("api", "tron", "TRC20Call", "", "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "0x06fdde03", true, 0)         // 使用TRC20Call调用read方法0x06fdde03
      let data = Encode("raw", "raw", "hex", ret.constant_result[0])
      return exchange.IO("api", "tron", "ParseTRC20StringProperty", data)                                                        // Tether USD
    }
    
  • Transfer
    
    exchange.IO("api", "tron", "Transfer", "TWTbn...", "TKCG...", 1000000)            // 使用Transfer方法转账TRX,从"TWTbn..."转到"TKCG...",1000000即1TRX。