Cuando estamos consumiendo una api creada con Laravel, puede que nos aparezca el error que dice “(429) Too Many Requests“. Aquí explicaré por qué pasa y qué solución tenemos para ello.
Básicamente esto aparece porque estamos haciendo muchas peticiones en un corto periodo de tiempo; por ejemplo, hacer 100 peticiones en menos de un minuto.
Es una forma que tiene Laravel para protegernos. Ya que de esta forma bloqueamos el acceso a un usuario malicioso que haga miles de peticiones para que nuestro servidor caiga. Si pasa el límite, sólo se le responderá con el código http 429.
No hay una verdadera solución para esto, porque en realidad no es un problema. Pero hay un pequeño truco para que ya no salga este error.
Si nosotros queremos permitir que se hagan más peticiones en el período de un minuto (arriesgándonos a un ataque) simplemente tenemos que modificar el archivo App/Http/Kernel.php e ir a la línea 41 (al menos en Laravel 5.4 y 5.5).
Ahí vemos que dice 60 y luego dice 1. El 60 representa el número de peticiones que se pueden hacer en 1 minuto. Y el 1, pues el período de tiempo medido en minutos, que en este caso es uno.
Por ejemplo, si yo quiero permitir 120 peticiones por minuto, haría esto:
Para que los cambios surtan efecto simplemente tenemos que guardar el archivo y listo. No necesitamos reiniciar el servidor o cosas así.
Laravel es un poderoso framework que nos permite hacer cosas maravillosas con poco esfuerzo. Viene protegido por defecto, pero nos da la oportunidad de cambiar lo que deseemos. Esa es una gran ventaja, de poder cambiar todo a nuestra conveniencia y de acuerdo a nuestras necesidades.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.