প্রতিটি ত্রুটি প্রতিক্রিয়ার দুটি ক্ষেত্র রয়েছে: error (মেশিন-পাঠযোগ্য, স্থিতিশীল, সংস্করণের মধ্যে কখনও পরিবর্তন হয় না) এবং message (মানব-পাঠযোগ্য, সময়ের সাথে উন্নত হতে পারে)। সর্বদা error এ সুইচ করুন আপনার কোডে। message ব্যবহারকারীদের কাছে প্রদর্শন করুন।

ত্রুটি ফরম্যাট

সমস্ত ত্রুটি প্রতিক্রিয়া একই কাঠামো অনুসরণ করে:

ত্রুটি প্রতিক্রিয়া
{ "error": "error_code_here", "message": "Human-readable explanation" }

কিছু ত্রুটিতে অতিরিক্ত ফিল্ড রয়েছে: ref (এনার্জি ডেলিগেশন প্রচেষ্টার জন্য একটি রেফারেন্স আইডি) এবং refund (স্বয়ংক্রিয় ফেরত সম্পর্কে বিবরণ)।

যাচাইকরণ ত্রুটি

ত্রুটি কোডHTTPকারণসমাধান
invalid_tx_hash400tx_hash একটি 64-অক্ষরের হেক্স স্ট্রিং নয়হ্যাশ ফরম্যাট পরীক্ষা করুন। অবশ্যই ঠিক 64 হেক্স অক্ষর হতে হবে, কোনো প্রিফিক্স নেই।
invalid_address400delegate_to একটি বৈধ Tron ঠিকানা নয়কল করার আগে TronWeb.isAddress() দিয়ে ঠিকানা যাচাই করুন।
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 ফিল্ড নির্দিষ্ট কারণ বর্ণনা করে।সাধারণ কারণ: tx এখনও নিশ্চিত হয়নি (3-5 সেকেন্ড অপেক্ষা করুন এবং একবার পুনরায় চেষ্টা করুন), ভুল প্রাপক ঠিকানা, লেনদেন একটি TRX ট্রান্সফার নয়, 4 TRX সর্বনিম্নের নিচে।
hash_already_used409এই tx হ্যাশ ইতিমধ্যে দাবি করা হয়েছেপ্রতিটি পেমেন্ট হ্যাশ শুধুমাত্র একবার ব্যবহার করা যায়। নতুন ডেলিগেশনের জন্য একটি নতুন পেমেন্ট পাঠান।

সেবা ত্রুটি

ত্রুটি কোডHTTPকারণসমাধান
delegation_failed400 / 500প্রদানকারী এনার্জি ডেলিগেশন সরবরাহ করতে পারেনিযদি আপনার পেমেন্ট যাচাইয়ের পরে ব্যর্থতা ঘটে, একটি স্বয়ংক্রিয় ফেরত সারিবদ্ধ হয়। চেক করুন refund অবজেক্ট। অন্যথায় পুনরায় চেষ্টা করুন, বা সাপোর্টের সাথে যোগাযোগ করুন ছাড়াই ref আইডি।
rate_limited429এই আইপি থেকে খুব বেশি অনুরোধগতি কমান এবং পুনরায় চেষ্টা করুন। সীমা হল প্রতি সেকেন্ডে 20 অনুরোধ।
server_error500অপ্রত্যাশিত অভ্যন্তরীণ ত্রুটিকয়েক সেকেন্ড পরে পুনরায় চেষ্টা করুন। যদি সমস্যা বজায় থাকে, সাপোর্টের সাথে যোগাযোগ করুন ref যদি উপলব্ধ থাকে।

কোডে ত্রুটি পরিচালনা করা

প্রস্তাবিত ত্রুটি পরিচালনা
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