Miért kapok érvénytelen nonce hibákat?

Utolsó frissítés: 2025. március 31.

Az EAPI:Invalid nonce hiba azt jelzi, hogy egy API kérés ismétlődő vagy a vártnál alacsonyabb nonce értékkel érkezett.

Mivel a nonce értéknek egyedinek kell lennie, és minden kéréssel növekednie kell, hibákba ütközhet, ha egyidejű kéréseket, vagy gyors egymásutáni kéréseket próbál végrehajtani, vagy ha egyetlen API kulcsot próbál használni több eszközhöz/alkalmazáshoz/bothoz.

Például két egyidejű API kérés nem feltétlenül érkezik meg a szándékolt sorrendben, és ha a második kérés (magasabb nonce-szal) érkezik meg az első kérés (alacsonyabb nonce-szal) előtt, akkor az első kérés elutasításra kerülne, amikor végül megérkezik.

Mivel az érvénytelen nonce hibák miatt az API kérései sikertelenek lesznek (például a megbízásai nem kerülnek leadásra), az érvénytelen nonce hibákat nem szabad egyszerűen figyelmen kívül hagyni, hanem a nonce létrehozási algoritmus javításával kell korrigálni (lásd alább néhány megoldást).

Megoldások

Az érvénytelen nonce hibákra a következő lehetséges megoldások léteznek:

  1. 1

    Hozzon létre több API kulcsot, és használjon külön kulcsot minden egyes egyidejű kéréshez, minden eszközhöz/alkalmazáshoz, minden kereskedési bothoz stb. Minden API kulcsnak saját külön nonce értéke van, így az API kérések érkezési sorrendje már nem jelentene problémát.

  2. 2

    Növelje a nonce felbontását, hogy további kéréseket engedélyezzen ugyanabban az időkeretben (például a nonce felbontásának növelése milliszekundumról tizedmilliszekundumra).

  3. 3

    Növelje/szélesítse a nonce ablakot az API kulcsaihoz, hogy egy rövid időkeretet biztosítson, amely alatt az érvénytelen nonce értékek nem okoznának hibát. Vegye figyelembe, hogy ezt a megoldást csak hálózati problémák leküzdésére szabad használni, nem pedig az érvénytelen nonce hibák teljes figyelmen kívül hagyására.

További segítségre van szükséged?