وثائق نقطة نهاية TRON RPC | ERPC
وثائق نقطة نهاية TRON RPC
استخدم ERPC كنقطة نهاية TRON RPC الخاصة بك لطلبات HTTP JSON-RPC وTRON HTTP API. يُعد TRON RPC جزءًا من RPC APIs الخاصة بـERPC ضمن Global Edge Blockchain Infrastructure لدينا، ويمكن إدارة مفتاح API من ERPC Web Dashboard.
يمكنك استخدام نفس مفتاح RPC الذي تستخدمه مع Solana وEthereum وAvalanche.
مرِّر مفتاح API الخاص بك في معامل الاستعلام
api-key، أو أرسله بصيغة Authorization: Bearer <YOUR_API_KEY>. وعند وجود الاثنين معًا، يُستخدم معامل الاستعلام.نقاط النهاية
أرسل طلبات JSON-RPC 2.0 كطلبات HTTP POST إلى:
text
https://edge.erpc.global/tron?api-key=<YOUR_API_KEY>https://edge.erpc.global/tron?api-key=<YOUR_API_KEY>أو إلى المضيف المخصّص:
text
https://tron.erpc.global?api-key=<YOUR_API_KEY>https://tron.erpc.global?api-key=<YOUR_API_KEY>على المضيف المخصّص، يصل
/ و/jsonrpc إلى نقطة نهاية JSON-RPC نفسها، وتُقدَّم TRON HTTP API تحت /wallet/<name> و/walletsolidity/<name>. وعلى edge.erpc.global، تأتي المسارات نفسها بعد البادئة /tron: /tron و/tron/jsonrpc و/tron/wallet/<name> و/tron/walletsolidity/<name>. ويجب أن يكون جسم طلب POST الخاص بـ TRON HTTP API كائن JSON. وتُقابَل المسارات الأخرى باستجابة HTTP 400.أمثلة
إليك مثالًا على طلب HTTP يُمرَّر فيه مفتاح API في معامل الاستعلام.
bash
curl 'https://edge.erpc.global/tron?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{
"jsonrpc":"2.0","id":1,
"method":"eth_blockNumber"
}'curl 'https://edge.erpc.global/tron?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{
"jsonrpc":"2.0","id":1,
"method":"eth_blockNumber"
}'وإليك الطلب نفسه مع إرسال مفتاح API في ترويسة
Authorization.bash
curl 'https://edge.erpc.global/tron' --header 'Content-Type: application/json' --header 'Authorization: Bearer <YOUR_API_KEY>' --data '{
"jsonrpc":"2.0","id":1,
"method":"eth_blockNumber"
}'curl 'https://edge.erpc.global/tron' --header 'Content-Type: application/json' --header 'Authorization: Bearer <YOUR_API_KEY>' --data '{
"jsonrpc":"2.0","id":1,
"method":"eth_blockNumber"
}'إليك مثالًا على TRON HTTP API.
bash
curl 'https://edge.erpc.global/tron/wallet/getnowblock?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{}'curl 'https://edge.erpc.global/tron/wallet/getnowblock?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{}'يمكنك الحصول على مفتاح API الخاص بك والتحقق منه في ERPC Web Dashboard: ERPC Web Dashboard
الطلبات المجمّعة
يُدعم إرسال دفعات JSON-RPC تضم ما بين 1 و100 استدعاء لكل طلب HTTP. يجب أن يكون لكل استدعاء
id خاص به، ولا يجوز تكرار قيم id داخل الدفعة الواحدة. يُحتسب كل استدعاء ضمن الطلب المجمّع كاستدعاء مستقل. يمكن أن يصل حجم جسم الطلب إلى 1 MiB. تُرسَل الدفعات إلى /jsonrpc. ويحمل طلب TRON HTTP API استدعاءً واحدًا ويُحتسب كاستدعاء واحد.قياس الاستخدام
يُقاس الاستخدام بالرموز، وقد يختلف معدل الرموز باختلاف الطريقة. يُقاس كل استدعاء في الطلب المجمّع عبر HTTP بشكل منفصل. ويُحتسب كل طلب TRON HTTP API كاستدعاء واحد.
حدود خطة Free
في خطة Free، يمكن لحسابك إرسال طلب واحد كل 10 ثوانٍ. يُحتسب هذا الحد لكل حساب وليس لكل نقطة نهاية، لذا قد يُحتسب ضمنه أيضًا طلب موجَّه إلى سلسلة أخرى. يُقابَل الطلب المُرسَل قبل ذلك باستجابة HTTP
429، وتحدد ترويسة retry-after مدة الانتظار بالثواني.في خطة Free، يُقابَل أي طلب يحتوي على استدعاءين أو أكثر من استدعاءات JSON-RPC باستجابة HTTP
429، ولا يُرسَل أي من استدعاءاته: يتلقى كل استدعاء خطأ JSON-RPC بالرمز -32041. أرسل هذه الاستدعاءات واحدًا تلو الآخر بدلًا من ذلك.الطرق المدعومة
تخدم نقطة النهاية الطرق التالية وعددها 38. طرق
eth_* وnet_* وweb3_* هي استدعاءات JSON-RPC تُرسَل إلى / أو /jsonrpc. أما إدخالات /wallet/* و/walletsolidity/* فهي مسارات TRON HTTP API، وتُستدعى بكائن JSON كجسم لطلب POST.eth_*(19):eth_blockNumber،eth_call،eth_chainId،eth_estimateGas،eth_gasPrice،eth_getBalance،eth_getBlockByHash،eth_getBlockByNumber،eth_getBlockReceipts،eth_getBlockTransactionCountByHash،eth_getBlockTransactionCountByNumber،eth_getCode،eth_getLogs،eth_getStorageAt،eth_getTransactionByBlockHashAndIndex،eth_getTransactionByBlockNumberAndIndex،eth_getTransactionByHash،eth_getTransactionReceipt،eth_syncingnet_*(3):net_listening،net_peerCount،net_versionweb3_*(2):web3_clientVersion،web3_sha3/wallet/*(9):/wallet/broadcasthex،/wallet/broadcasttransaction،/wallet/estimateenergy،/wallet/getaccount،/wallet/getblockbynum،/wallet/getnowblock،/wallet/gettransactionbyid،/wallet/gettransactioninfobyid،/wallet/triggerconstantcontract/walletsolidity/*(5):/walletsolidity/getaccount،/walletsolidity/getblockbynum،/walletsolidity/getnowblock،/walletsolidity/gettransactionbyid،/walletsolidity/gettransactioninfobyid
تُقابَل أي طريقة أو مسار غير مدرج في القائمة باستجابة HTTP
400.رموز حالة الاستجابة
| HTTP status | المعنى |
|---|---|
| 200 | استجابة JSON-RPC من upstream. ويُعاد خطأ JSON-RPC أيضًا مع HTTP 200: يحتفظ بقيمتي id الطلب وerror.code، وتكون قيمة error.message هي ERPC upstream error، ولا يُعاد error.data. |
| 400 | طريقة أو مسار خارج قائمة الطرق المدعومة، أو طلب JSON-RPC غير صالح، أو دفعة فارغة أو دفعة تتجاوز 100 استدعاء، أو id مكرر داخل دفعة، أو جسم طلب يتجاوز 1 MiB. |
| 401 | مفتاح API مفقود أو غير صالح، أو عدم استيفاء قيد IP أو Origin المفروض على المفتاح. |
| 405 | طريقة طلب HTTP غير POST. |
| 426 | طُلب WebSocket Upgrade. تعمل نقطة النهاية عبر HTTP فقط. |
| 429 | تقييد المعدل، بما في ذلك حدود خطة Free الواردة أعلاه: أكثر من طلب واحد كل 10 ثوانٍ، أو استدعاءان أو أكثر في طلب واحد. إذا وُجدت ترويسة retry-after، فانتظر عدد الثواني المحدد فيها. |
| 502 | تعذّر إكمال طلب upstream: فشل استجابة upstream، أو استجابة تتجاوز 8 MiB، أو عدم ورود رد خلال 30 ثانية. وإذا أبلغت استجابة TRON HTTP API عن فشل، فتُقابَل أيضًا باستجابة 502. |
| 503 | الخدمة غير متاحة مؤقتًا. |
طرق TRON RPC والوثائق
للقائمة الكاملة بالطرق القياسية والمعاملات والمواصفات، يُرجى الرجوع إلى الوثائق الرسمية.






