Was ist ein Nonce-Fenster?

Zuletzt aktualisiert: 31. März 2025

Eine der optionalen Einstellungen, die beim Generieren eines neuen API-Schlüssels verfügbar ist, ist ein Nonce-Fenster.

Ein Nonce-Fenster ist ein kurzer Zeitrahmen (1 Sekunde, 10 Sekunden usw.), in dem API-Anfragen mit einer ungültigen Nonce, insbesondere einem Nonce-Wert, der niedriger ist als ein zuvor verwendeter Nonce-Wert, keinen Fehler aufgrund einer ungültigen Nonce (EAPI:Invalid nonce) verursachen.

Der Zweck eines Nonce-Fensters ist es, Nonce-Fehler zu beheben, die durch Netzwerkinonsistenzen verursacht werden (z. B. wenn API-Anfragen aufgrund von Netzwerklatenz in einer anderen Reihenfolge eintreffen, als sie gesendet wurden).

In den meisten Situationen sollte die Einstellung des Nonce-Fensters auf ihrem Standardwert von 0 (Null) belassen werden. Sollten jedoch aufgrund von Netzwerkproblemen Fehler aufgrund einer ungültigen Nonce auftreten, kann die Einstellung des Nonce-Fensters hilfreich sein.

Die geeignete Einstellung für ein Nonce-Fenster hängt von der benötigten Zeit und der Auflösung der Nonce selbst ab.

Beispiele für eine Nonce, die auf der aktuellen UNIX-Zeit in Millisekunden basiert (eine beliebte und effektive Wahl für eine Nonce), wären:

  • eine Nonce-Fenster-Einstellung von 5000, die ein 5-Sekunden-Nonce-Fenster ermöglicht,

  • eine Nonce-Fenster-Einstellung von 8000, die ein 8-Sekunden-Nonce-Fenster ermöglicht,

  • oder eine Nonce-Fenster-Einstellung von 500, die ein 0,5-Sekunden-Nonce-Fenster ermöglicht.

Beispiele für eine Nonce, die auf einem einfachen inkrementellen Zähler basiert (1, 2, 3 usw., obwohl dies nicht empfohlen wird), wären:

  • eine Nonce-Fenster-Einstellung von 30, die ein 10-Sekunden-Nonce-Fenster bei einer maximalen API-Aufrufrate von 3 Aufrufen pro Sekunde ermöglicht,

  • eine Nonce-Fenster-Einstellung von 50, die ein 5-Sekunden-Nonce-Fenster bei einer maximalen API-Aufrufrate von 10 Aufrufen pro Sekunde ermöglicht,

  • oder eine Nonce-Fenster-Einstellung von 5, die ein 5-Sekunden-Nonce-Fenster bei einer maximalen API-Aufrufrate von 1 Aufruf pro Sekunde ermöglicht.

Brauchst du weitere Hilfe?