Una de las configuraciones opcionales, disponible cuando se genera una clave de API nueva es una nonce window.
Una nonce window es un periodo de tiempo corto (1 segundo, 10 segundos, etc.) durante el cual las solicitudes de la API con un nonce no válido, específicamente un valor nonce menor que otro utilizado anteriormente, no causarán un error nonce (EAPI: nonce no válido).
El propósito de una nonce window es solucionar los errores nonce causados por la inestabilidad de la red (como cuando las solicitudes de la API llegan en un orden diferente al orden en que fueron enviadas debido a los tiempos de espera de la red).
En la mayoría de los casos, la configuración de la nonce window se debe mantener en su valor predeterminado de 0 (cero), pero en el caso de que se reciban errores nonce no válidos debido a problemas en la red, la configuración de la nonce window puede ser útil.
El ajuste adecuado de una nonce window depende de la cantidad de tiempo requerido y de la resolución del mismo nonce.
Ejemplos de un nonce basados en el tiempo UNIX actual en milisegundos (una opción popular y efectiva para un nonce) serían:
- una configuración nonce window de 5000 permite una nonce window de 5 segundos,
- una configuración nonce window de 8000 permite una nonce window de 8 segundos,
- o una configuración nonce window de 500 permite una nonce window de 0.5 segundos.
Ejemplos de un nonce basado en un contador ascendente simple (1, 2, 3, y así sucesivamente, aunque no se recomienda) serían:
- una configuración nonce window de 30 permite una nonce window de 10 segundos con un máximo de 3 solicitudes a la API por segundo,
- una configuración nonce window de 50 permite una nonce window de 5 segundos con un máximo de 10 solicitudes a la API por segundo,
- o una configuración nonce window de 5 permite una nonce window de 5 segundos y 1 solicitud a la API por segundo.