Kila jibu la hitilafu lina sehemu mbili: error (inayoweza kusomwa na mashine, imara, haisogei kati ya matoleo) na message (inayoweza kusomwa na watu, inaweza boreswa baada ya muda). Kamata kila wakati error katika kod yako. Onyesha message kwa watumiaji.

Muundo wa Hitilafu

Majibu yote ya hitilafu yanafuata muundo sawa:

jibu la kosa
{ "error": "error_code_here", "message": "Human-readable explanation" }

Baadhi ya hitilafu zina sehemu za ziada: ref (kitambulisho cha kumbukumbu kwa jaribu la kukodisha nishati) na refund (maelezo kuhusu rudisha fedha ya kiotomati).

Hitilafu za Uhalali

Msimbo wa HitilafuHTTPSababuSuluhisho
invalid_tx_hash400tx_hash si kamba ya hex ya herufi 64Angalia umbizo la hashi. Lazima iwe hex herufi 64 haswa, bila kiambishi.
invalid_address400delegate_to si anwani halali ya TronThibitisha anwani kwa TronWeb.isAddress() kabla ya kupigia simu.
missing_signature400Hakuna saini iliyotolewa katika ombiSaini ujumbe {tx_hash}:{delegate_to} kwa tronWeb.trx.signMessageV2() kutoka kwa pochi ambayo ilituma TRX.
invalid_signature401Saini haiwezi kuthibitishwaHakikisha umesaini haswa {tx_hash}:{delegate_to} (hex hashi ndogo, koloni, anwani kamili ya Tron).
signature_mismatch403Anwani ya msaini haifanani na mtumaji wa malipoSaini lazima itoke kwenye pochi sawa ambayo ilituma malipo ya TRX. Pochi tofauti = kukataliwa.

Hitilafu za Malipo

Msimbo wa HitilafuHTTPSababuSuluhisho
payment_verification_failed404 / 400Malipo yenye mlolongo haywezi kuthibitishwa. Sehemu ya message inaelezea sababu mahususi.Sababu za kawaida: tx haijathibitishwa bado (subiri sekunde 3-5 na jaribu tena), anwani mpokeaji batili, muamala si mjumbe wa TRX, chini ya kiwango cha TRX 4.
hash_already_used409Hashi hii ya tx imetumika tayariKila hashi ya malipo inaweza kutumiwa mara moja tu. Tuma malipo mapya kwa kukodisha nishati mpya.

Hitilafu za Huduma

Msimbo wa HitilafuHTTPSababuSuluhisho
delegation_failed400 / 500Mtoa huduma hawezi kutoa kukodisha nishatiIkiwa kushindwa kulifanyika baada ya malipo yako kuthibitishwa, rudisha fedha ya kiotomati imewekwa foleni. Angalia refund kitu. Bila hapo, jaribu tena au wasiliana na timu ya msaada na ref ID.
rate_limited429Ombi nyingi sana kutoka IP hiiPunguza kasi na jaribu tena. Kikomo ni ombi 20 kwa sekunde.
server_error500Hitilafu ya ndani isiyotarajiwaJaribu tena baada ya sekunde chache. Ikiwa inabaki, wasiliana na msaada na ref ikiwa inaweza.

Kushughulikia Hitilafu katika Msimbo

usambulisho wa kosa uliopendekezwa
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