Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Leguim en 1 Diciembre 2019, 22:16 pm



Título: [Pregunta]: ¿Anti-BUG en AJAX?
Publicado por: Leguim en 1 Diciembre 2019, 22:16 pm
Buenos días,

llevo arrastrando un problema hace ya varios meses, estaría necesitando saber como puedo "parchear" o hacer un anti bug para ficheros de AJAX.

Para meterlos en contexto,
digamos que hay un botón que al momento de presionarlo por medio de ajax va a llamar a un fichero.php que de lo que se va a encargar será de agregar un nuevo dato a una base de datos y mostrarlo por pantalla (html).

Imaginen que el usuario ve que la pagina va un poco lenta y ya pasaron 4 segundos desde que hizo click y no apareció nada. va a hacer otro click y entonces ya habría dos solicitudes en carrera lo cual mostrará o va a guardar dos datos en la base de datos.

Ahora, lo veo como un tipo de "vulnerabilidad" ya que si un usuario va y toca el boton 100 veces seguidas, de forma inmediata va a estar agregando 100 datos a la base de datos.

La idea sería que una vez que complete la solicitud ajax (success) recién ahí tenga permitido poder volver a realizar otra solicitud/petición.

Código
  1. function AJAX(a)
  2. {
  3.                        $.ajax({
  4. url: 'ajax/x.php',
  5. type: 'POST',
  6. dataType: 'html',
  7. data: {a},
  8.  
  9. success: function()
  10. {
  11. $(document).ready(function()
  12. {
  13. // Para este punto ya se completó la solicitud AJAX (bien o mal) ya se completó.
  14. }
  15. })
  16.  
  17. .done(function(results)
  18. {
  19. $('#elemento').append(results);
  20. })
  21. }
  22.  

(El ejemplo que doy es solamente eso, para dar un ejemplo no es un sistema "real")

Gracias.