[C#] TRX 與 USDT 合約轉帳交易解析:如何獲取完整的交易資料

2024-12-17

上一篇文章 透過 Trongrid 準確獲取 Tron 區塊內的完整交易資料,抓到區塊的每一筆  txid ,這時候我們要去抓取該 txid 最原始的資料

這時候有分成一般轉 trx 跟 使用 contract 的轉帳,這邊就是紀錄一下



1. 這裡面我都透過 RestSharp 處理 關於 http 的相關事情

2. 這邊我舉例兩個 txid 

2.1 純轉帳 trx - https://tronscan.org/#/transaction/497e9d02f78d22c9f19bab58b25384290d26b3eeac2362f0321d90b8515ea11a

我們透過呼叫 https://developers.tron.network/reference/wallet-gettransactionbyid

這個來測試,回應結果

這時候我們看到裡面資料有 to_address 跟 amount 這樣看起來要抓取比較簡單


2.2 合約轉帳 USDT - https://tronscan.org/#/transaction/ff67cb02dd3b358f4e8c0b1aa9de90e819ec9c564832d961619973f0d393ee9a

我們依樣透過 https://developers.tron.network/reference/wallet-gettransactionbyid

回應結果

這時候竟然 to_address 跟 amount 消失了 但是,我們可以透過 contract.parameter.value.data 中間去取得接下來就是看我程式碼的部分


3. 取得該 txid 資料印出 from , to , amount 


result:

Transfer TRX txid:497e9d02f78d22c9f19bab58b25384290d26b3eeac2362f0321d90b8515ea11a

from:TUzL6cNCgRdee1fSCv6x3oKZhSJ4CKast9 ,to:TEPSrSYPDSQ7yXpMFPq91Fb1QEWpMkRGfn ,amount:18465000001

-------------

Transfer Contract Token txid:ff67cb02dd3b358f4e8c0b1aa9de90e819ec9c564832d961619973f0d393ee9a

from:TT27CwjDsqWxrFLzs96xeKVhFhihkD1DjG ,to:TEk2MfjDGuM4UMgmCqZwj2WRgtkwbmtrL7 ,amount:1442000000



詳細我都寫在程式碼裡面了,希望有幫助到想要分析資料的人 :)



當麻許的超技八 2014 | Donma Hsu Design.