TRON Tài liệu tham khảo API HTTP: Điểm cuối cần thiết cho nhà phát triển
Các nút đầy đủ TRON hiển thị API JSON-over-HTTP tương tự như JSON-RPC của Ethereum nhưng hướng đến phương thức — wallet/getaccount, wallet/createtransaction, wallet/triggersmartcontract và hàng tá thứ khác. TronGrid lưu trữ các điểm cuối cân bằng tải nên hầu hết các nhà phát triển không bao giờ chạy nút riêng của họ.
Tài liệu tham khảo này liệt kê các điểm cuối bạn sẽ sử dụng hàng ngày cho số dư, giao dịch, lệnh gọi hợp đồng và lập chỉ mục sự kiện.
URL cơ sở
| Mạng | URL cơ sở TronGrid |
|---|---|
| Mạng chính | https://api.trongrid.io |
| Mạng thử nghiệm Shasta | https://api.shasta.trongrid.io |
| Mạng thử nghiệm Nile | https://nile.trongrid.io |
Tất cả các đường dẫn đều nối thêm /wallet/... hoặc sử dụng trình bao bọc /v1/... REST.
Đăng ký khóa API: trongrid.io — tiêu đề TRON-PRO-API-KEY.
Tìm hiểu sâu: TronGrid Hướng dẫn API.
Định dạng yêu cầu
Hầu hết các điểm cuối wallet/*:
POST /wallet/getaccount
Content-Type: application/json
{"address": "TLa2f6VPqDgRE67v1736s7bJ8Ray5wYjU7", "visible": true}
visible: true → Địa chỉ Base58. false → hệ thập lục phân có tiền tố 41.
Điểm cuối tài khoản
| Điểm cuối | Mục đích |
|---|---|
wallet/getaccount | TRX cân bằng, đóng băng, phiếu bầu, quyền |
wallet/getaccountresource | Năng lượng, băng thông sẵn có |
wallet/validateaddress | Xác thực tổng kiểm tra |
wallet/createaccount | Kích hoạt tài khoản mới (chi phí TRX) |
ví dụ về getaccount
curl -X POST https://api.trongrid.io/wallet/getaccount \
-H "TRON-PRO-API-KEY: $KEY" \
-d '{"address":"TYourAddress","visible":true}'
Số dư TRC-20 sử dụng lệnh gọi hợp đồng hoặc API v1 — truy vấn TRC-20 số dư.
Điểm cuối giao dịch
| Điểm cuối | Mục đích |
|---|---|
wallet/createtransaction | Chuyển giao xây dựng TRX |
wallet/broadcasttransaction | Gửi tx đã ký |
wallet/gettransactionbyid | Giao dịch thô bằng txid |
wallet/gettransactioninfobyid | Biên lai, phí, nhật ký, kết quả |
wallet/gettransactioncountbyblocknum | Chặn số lượng tx |
Quy trình xác minh: xác minh API giao dịch.
const info = await fetch('https://api.trongrid.io/wallet/gettransactioninfobyid', {
method: 'POST',
headers: { 'Content-Type': 'application/json', 'TRON-PRO-API-KEY': key },
body: JSON.stringify({ value: txid })
}).then(r => r.json());
// info.receipt.result === 'SUCCESS'
Điểm cuối hợp đồng thông minh
| Điểm cuối | Mục đích |
|---|---|
wallet/triggersmartcontract | Cuộc gọi thay đổi trạng thái |
wallet/triggerconstantcontract | Cuộc gọi chỉ đọc |
wallet/deploycontract | Triển khai mã byte |
wallet/getcontract | Siêu dữ liệu hợp đồng |
Hướng dẫn: kích hoạt hợp đồng thông minh.
v1 API REST
REST cấp cao hơn tại /v1/:
| Đường dẫn | Mục đích |
|---|---|
GET /v1/accounts/{address} | Tóm tắt tài khoản |
GET /v1/accounts/{address}/transactions | TRX txs |
GET /v1/accounts/{address}/transactions/trc20 | TRC-20 chuyển khoản |
GET /v1/contracts/{address}/events | Sự kiện hợp đồng |
Ví dụ về lịch sử TRC-20:
GET /v1/accounts/TAddr.../transactions/trc20?only_confirmed=true&contract_address=TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t&limit=20
Điểm cuối sự kiện
GET /v1/contracts/{contract}/events?event_name=Transfer&only_confirmed=true
Lọc phía máy khách cho địa chỉ to hoặc sử dụng bộ lọc dấu thời gian khối.
Mẫu Trình xử lý sự kiện.
Chặn điểm cuối
| Điểm cuối | Mục đích |
|---|---|
wallet/getnowblock | Khối mới nhất |
wallet/getblockbynum | Chặn theo số |
wallet/getblockbyid | Chặn theo hàm băm |
Hữu ích cho việc đếm xác nhận trong hệ thống thanh toán — chấp nhận thanh toán USDT.
Quy trình ký tên
Luồng máy chủ điển hình:
createtransactionhoặctriggersmartcontract→ tx không dấu- Ký bằng khóa riêng (TronWeb
trx.sign) broadcasttransaction→ txid
TronWeb bao hàm cả ba — TronWeb giới thiệu.
Giới hạn tỷ lệ và lỗi
| Mã HTTP | Ý nghĩa |
|---|---|
| 429 | Tỷ lệ giới hạn - lùi, khóa nâng cấp |
| 503 | Quá tải nút - thử lại |
| 400 | Yêu cầu không đúng định dạng - kiểm tra visible và định dạng địa chỉ |
Sản xuất: đọc bộ nhớ đệm, hạn chế các lựa chọn thay thế websocket — thăm dò ý kiến có kỷ luật.
TronWeb so với HTTP thô
| Sử dụng TronWeb | Sử dụng HTTP thô |
|---|---|
| Node.js / trình duyệt dApp | Dịch vụ Python, Go, Rust |
| Mã hóa ABI | Dịch vụ vi mô tùy chỉnh |
| Tạo mẫu nhanh | Kiểm soát sự phụ thuộc chặt chẽ |
Bảo mật {#bảo mật}
- Không bao giờ ĐĂNG khóa riêng tư lên TronGrid
- Ký tại địa phương hoặc HSM
- Khóa API không bí mật như khóa riêng nhưng không cam kết với Git
- Xác thực tất cả các địa chỉ phía máy chủ — kiểm tra địa chỉ hợp lệ
Sự khác biệt của mạng thử nghiệm
Đường dẫn điểm cuối giống nhau, URL cơ sở khác nhau. Địa chỉ hợp đồng USDT khác nhau trên testnet - sử dụng mã thông báo vòi.
Danh sách kiểm tra khắc phục sự cố
Nếu có sự cố xảy ra trên TRON, hãy xử lý nó như một vấn đề gỡ lỗi có cấu trúc: xác nhận txid chính xác trên chuỗi, xác minh địa chỉ hợp đồng mục tiêu và chỉ sau đó mới quyết định xem liệu lỗi có thể phục hồi được hay không. Trên TRON, nhiều vấn đề “bí ẩn” chỉ đơn giản là một trong số: mạng sai (mainnet so với testnet), hợp đồng mã thông báo sai (USDT giả / mã thông báo có tên tương tự), không đủ tài nguyên (OUT_OF_ENERGY / băng thông) hoặc độ trễ giao diện người dùng/trình lập chỉ mục giữa ví và trình khám phá.
Bắt đầu với các bước kiểm tra dựa trên chuỗi sau:- Luôn sao chép toàn bộ txid/hash từ ví hoặc explorer của bạn.
- Xác nhận trạng thái kết quả tx trên TronScan (SUCCESS, REVERT, OUT_OF_ENERGY hoặc vẫn đang chờ xử lý).
- Kiểm tra xem địa chỉ người nhận/hợp đồng có khớp với nội dung bạn định gửi hay không.
- Nếu đó là lệnh gọi hợp đồng, hãy xác nhận rằng bộ chọn chức năng và các tham số phù hợp với tiêu chuẩn mã thông báo mà bạn cho rằng mình đang sử dụng (TRC-20 so với TRC-10 so với BEP-20 trên BSC).
Sau đó áp dụng đường dẫn sửa lỗi cho danh mục của bạn:
- Xác nhận trạng thái và thông số giao dịch.
- Xác minh địa chỉ (hợp đồng mã thông báo, người nhận, bộ định tuyến/người chi tiêu).
- Thêm hoặc ủy quyền tài nguyên (Năng lượng/Băng thông) khi lỗi do tài nguyên.
###Những lỗi thường gặp
Các mẫu này gây ra hầu hết các lỗi ở cấp độ người dùng:
- Sử dụng địa chỉ mainnet trên testnet (hoặc ngược lại).
- Sao chép ký hiệu mã thông báo thay vì địa chỉ hợp đồng TRC-20 thực tế.
- Ký sai địa chỉ phê duyệt/chi tiêu do liên kết UI độc hại hoặc lỗi thời.
- Thử lại mà không thay đổi đầu vào bị lỗi (ví dụ: REVERT tiếp tục hoàn nguyên cho đến khi bạn sửa được tham số).
Nếu bạn không chắc chắn, đừng “gửi lại”. Thực hiện một thay đổi có kiểm soát, xác minh trên TronScan rồi tiếp tục.
##Câu hỏi thường gặp
Làm cách nào để biết liệu giao dịch có thực sự được xác nhận hay không?
Sử dụng TronScan và kiểm tra trạng thái kết quả tx. Nhãn “đang chờ xử lý” của ví có thể bị trễ; trạng thái dây chuyền là nguồn gốc của sự thật. Sao chép txid và xác minh SUCCESS/REVERT/OUT_OF_ENERGY, không chỉ văn bản giao diện người dùng.
Tại sao giao diện người dùng khác với TronScan?
Một số ví và dApp sử dụng các bộ chỉ mục hoặc lớp bộ đệm khác nhau. Độ trễ ngắn giữa phát sóng và lập chỉ mục là bình thường; so sánh txid và đợi chuỗi ổn định trước khi kết luận thất bại.
Tôi nên làm gì sau REVERT?
Dừng và giải mã cuộc gọi thất bại. Hầu hết REVERT đều do tham số không hợp lệ, địa chỉ hợp đồng sai, thiếu phê duyệt hoặc không khớp giữa tiêu chuẩn và phương thức mã thông báo. Khắc phục nguyên nhân rồi ký lại.
Ký phê duyệt không giới hạn có an toàn không?
Phê duyệt không giới hạn chỉ an toàn đối với các địa chỉ chi tiêu đáng tin cậy mà bạn đã xác minh (nguồn đã xác minh, bộ định tuyến chính xác và hợp đồng mã thông báo dự kiến). Để thử nghiệm, hãy ưu tiên phê duyệt có giới hạn và thu hồi sau khi bạn hoàn thành.
TRON yêu cầu những tài nguyên gì cho cuộc gọi hợp đồng?
Việc thực thi hợp đồng thông minh chủ yếu tiêu thụ Năng lượng, trong khi byte giao dịch tiêu thụ Băng thông. Nếu bạn nhận được OUT_OF_ENERGY, hãy thêm/đóng băng/ủy thác Năng lượng. Nếu băng thông cạn kiệt, hãy tập trung vào việc giữ đủ chất lỏng TRX để phân bổ byte và tài nguyên.
Làm cách nào để giảm phiếu hỗ trợ?
Hiển thị cho người dùng thông báo rõ ràng về “điều gì đã xảy ra” dựa trên trạng thái chuỗi và liên kết trực tiếp đến hướng dẫn có liên quan (đang chờ xử lý, không thành công, hết năng lượng hoặc xác minh). Lưu trữ txid để bạn có thể hòa giải nhanh chóng.
Hướng dẫn liên quan {#có liên quan}
Câu hỏi thường gặp
URL cơ sở cho API mạng chính TRON là gì?
https://api.trongrid.io cho TronGrid. Các nút tự lưu trữ sử dụng cùng đường dẫn trên máy chủ của bạn.
Tôi có cần khóa API cho TronGrid không?
Được đề xuất cho sản xuất — giới hạn tốc độ cao hơn thông qua tiêu đề TRON-PRO-API-KEY.
TRON API REST hay JSON-RPC?
Kết hợp — ví kế thừa/* POST JSON cộng với tài nguyên REST v1. Không giống với Ethereum JSON-RPC.
Làm cách nào để có được số dư USDT qua API?
triggerconstantcontract balanceOf(address) hoặc điểm cuối danh sách mã thông báo tài khoản v1 trc20.
Tài liệu API chính thức ở đâu?
TronGrid tài liệu tạidevelopers.tron.network và trongrid.io — bài viết này tóm tắt các điểm cuối phổ biến.
Cảm ơn phản hồi của bạn — giúp chúng tôi cải thiện tài liệu.