प्रत्येक त्रुटि प्रतिक्रिया में दो फ़ील्ड होते हैं: error (मशीन-पठनीय, स्थिर, संस्करणों के बीच कभी नहीं बदलता) और message (मानव-पठनीय, समय के साथ इसमें सुधार किया जा सकता है)। हमेशा चालू रखें error आपके कोड में। प्रदर्शित करें message उपयोगकर्ताओं के लिए।

त्रुटि प्रारूप

सभी त्रुटि प्रतिक्रियाओं की संरचना एक जैसी होती है:

error response
{ "error": "error_code_here", "message": "Human-readable explanation" }

कुछ त्रुटियों में अतिरिक्त फ़ील्ड शामिल होते हैं: ref (प्रतिनिधिमंडल प्रयास के लिए एक संदर्भ आईडी) और refund (स्वचालित रिफंड के बारे में विवरण)।

सत्यापन त्रुटियाँ

त्रुटि कोडHTTPकारणसंकल्प
invalid_tx_hash400tx_hash 64 वर्णों वाली हेक्स स्ट्रिंग नहीं हैहैश प्रारूप की जाँच करें। इसमें ठीक 64 हेक्स अक्षर होने चाहिए, कोई उपसर्ग नहीं होना चाहिए।
invalid_address400delegate_to एक मान्य Tron पता नहीं हैकॉल करने से पहले TronWeb () का उपयोग करके पते को सत्यापित करें।
missing_signature400अनुरोध में कोई हस्ताक्षर नहीं दिए गए हैंसंदेश पर हस्ताक्षर करें {tx_hash}:{delegate_to} साथ tronWeb.trx.signMessageV2() उस वॉलेट से जिसने TRX भेजा था।
invalid_signature401हस्ताक्षर सत्यापित नहीं हो सकेसुनिश्चित करें कि आपने सही ढंग से हस्ताक्षर किए हैं {tx_hash}:{delegate_to} (लोअरकेस हेक्स हैश, कोलन, सटीक Tron पता)।
signature_mismatch403हस्ताक्षरकर्ता का पता भुगतान भेजने वाले के पते से मेल नहीं खाता है।हस्ताक्षर उसी वॉलेट से आना चाहिए जिससे TRX भुगतान भेजा गया था। यदि भुगतान किसी अन्य वॉलेट से हुआ है तो वह अस्वीकृत हो जाएगा।

भुगतान त्रुटियाँ

त्रुटि कोडHTTPकारणसंकल्प
payment_verification_failed404 / 400ऑन-चेन भुगतान का सत्यापन नहीं हो सका। message यह क्षेत्र विशिष्ट कारण का वर्णन करता है।सामान्य कारण: लेनदेन की पुष्टि नहीं हुई है (3-5 सेकंड प्रतीक्षा करें और एक बार फिर प्रयास करें), प्राप्तकर्ता का पता गलत है, लेनदेन TRX हस्तांतरण नहीं है, न्यूनतम 4 TRX से कम है।
hash_already_used409इस लेनदेन का हैश पहले ही किसी और ने ले लिया है।प्रत्येक भुगतान हैश का उपयोग केवल एक बार किया जा सकता है। नए प्रतिनिधिमंडल के लिए नया भुगतान भेजें।

सेवा त्रुटियाँ

त्रुटि कोडHTTPकारणसंकल्प
delegation_failed400 / 500प्रदाता ऊर्जा प्रतिनिधिमंडल को पहुंचाने में असमर्थ रहा।यदि भुगतान सत्यापित होने के बाद विफलता हुई है, तो स्वचालित धनवापसी प्रक्रिया शुरू हो जाएगी। जाँच करें refund ऑब्जेक्ट। अन्यथा पुनः प्रयास करें, या सहायता के साथ संपर्क करें। ref पहचान।
rate_limited429इस आईपी से बहुत अधिक अनुरोध आ रहे हैं।गति धीमी करें और पुनः प्रयास करें। सीमा 20 अनुरोध प्रति सेकंड है।
server_error500अप्रत्याशित आंतरिक त्रुटिकुछ सेकंड बाद पुनः प्रयास करें। यदि समस्या बनी रहती है, तो सहायता विभाग से संपर्क करें। ref अगर हो तो।

कोड में त्रुटियों को संभालना

recommended error handling
const result = await fetch('https://api.tronnrg.com/delegate', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ tx_hash: hash, delegate_to: addr, signature: sig }), }).then(r => r.json()); if (result.error) { switch (result.error) { case 'payment_verification_failed': // Most common: tx not yet indexed. Wait 3s and retry once. await new Promise(r => setTimeout(r, 3000)); return retry(hash, addr); case 'hash_already_used': // Already claimed. Don't retry. throw new Error('Duplicate delegation attempt'); case 'signature_mismatch': // Signer != payment sender. Sign with the same key. throw new Error('Signer does not match payment sender'); case 'delegation_failed': // Refund queued automatically if payment was verified. if (result.refund) console.log('Refund queued:', result.refund); break; default: console.error(result.error, result.message); } return; } // Success console.log('Delegated:', result.energy, 'energy'); console.log('Delegation tx:', result.delegations[0].tx); // verify on TronScan console.log('Ref:', result.ref);
Telegram WhatsApp