Vad är ett nonce-fönster?

Senast uppdaterad: 31 mars 2025

En av de valfria inställningarna som är tillgängliga när du genererar en ny API-nyckel är ett nonce-fönster.

Ett nonce-fönster är en kort tidsram (1 sekund, 10 sekunder, etc.) under vilken API-förfrågningar med ett ogiltigt nonce, specifikt ett nonce-värde som är lägre än ett tidigare använt nonce-värde, inte kommer att orsaka ett ogiltigt nonce-fel (EAPI:Invalid nonce).

Syftet med ett nonce-fönster är att övervinna nonce-fel orsakade av nätverksinkonsekvens (som när API-förfrågningar anländer i en annan ordning än den de skickades i på grund av nätverkslatens).

I de flesta situationer bör inställningen för nonce-fönstret behållas på sitt standardvärde 0 (noll), men om ogiltiga nonce-fel tas emot på grund av nätverksproblem kan inställningen för nonce-fönstret vara till hjälp.

Den lämpliga inställningen för ett nonce-fönster beror på den tid som krävs och nonce-värdets upplösning.

Exempel på ett nonce baserat på aktuell UNIX-tid i millisekunder (ett populärt och effektivt val för ett nonce) skulle vara:

  • en nonce-fönsterinställning på 5000 som tillåter ett 5 sekunders nonce-fönster,

  • en nonce-fönsterinställning på 8000 som tillåter ett 8 sekunders nonce-fönster,

  • eller en nonce-fönsterinställning på 500 som tillåter ett 0,5 sekunders nonce-fönster.

Exempel på ett nonce baserat på en enkel inkrementerande räknare (1, 2, 3, och så vidare, även om detta inte rekommenderas) skulle vara:

  • en nonce-fönsterinställning på 30 som tillåter ett 10 sekunders nonce-fönster vid en maximal API-anropsfrekvens på 3 anrop per sekund,

  • en nonce-fönsterinställning på 50 som tillåter ett 5 sekunders nonce-fönster vid en maximal API-anropsfrekvens på 10 anrop per sekund,

  • eller en nonce-fönsterinställning på 5 som tillåter ett 5 sekunders nonce-fönster vid en maximal API-anropsfrekvens på 1 anrop per sekund.

Behöver du mer hjälp?