Miksi saan virheellisiä nonce-virheitä?

Viimeksi päivitetty: 31.3.2025

EAPI:Invalid nonce -virhe tarkoittaa, että API-pyyntö vastaanotettiin toistuvalla tai odotettua pienemmällä nonce-arvolla.

Koska nonce-arvon on oltava yksilöllinen ja sen on kasvettava jokaisen pyynnön myötä, saatat kohdata virheitä yrittäessäsi tehdä samanaikaisia pyyntöjä, nopeasti peräkkäisiä pyyntöjä tai yrittäessäsi käyttää yhtä API-avainta useille laitteille/sovelluksille/boteille.

Esimerkiksi kaksi samanaikaista API-pyyntöä eivät välttämättä saavu aiotussa järjestyksessä, ja jos toinen pyyntö (suuremmalla noncella) saapuu ennen ensimmäistä pyyntöä (pienemmällä noncella), ensimmäinen pyyntö hylätään sen lopulta saapuessa.

Koska virheelliset nonce-virheet saavat API-pyyntösi epäonnistumaan (esimerkiksi tilauksiasi ei tehdä), virheellisiä nonce-virheitä ei pidä yksinkertaisesti jättää huomiotta, vaan ne on korjattava parantamalla noncen luontialgoritmia (katso joitakin ratkaisuja alla).

Ratkaisut

Joitakin mahdollisia ratkaisuja virheellisiin nonce-virheisiin ovat seuraavat:

  1. 1

    Luo useita API-avaimia ja käytä eri avainta kullekin samanaikaiselle pyynnölle, kullekin laitteelle/sovellukselle, kullekin kaupankäyntibotille jne. Jokaisella API-avaimella on oma erillinen nonce-arvonsa, joten API-pyyntöjen saapumisjärjestys ei enää olisi ongelma.

  2. 2

    Lisää nonce-resoluutiota, jotta voit sallia lisäpyyntöjä saman ajanjakson aikana (esimerkiksi lisäämällä nonce-resoluutiota millisekunneista kymmenesosamillisekunneiksi).

  3. 3

    Suurenna/laajenna API-avaimiesi nonce-ikkunaa tarjotaksesi lyhyen ajanjakson, jonka aikana virheelliset nonce-arvot eivät aiheuttaisi virhettä. Huomaa, että tätä ratkaisua tulisi käyttää vain verkko-ongelmien voittamiseen, ei tapana jättää virheellisiä nonce-virheitä kokonaan huomiotta.

Tarvitsetko lisää apua?