Cuando estaba por terminar la funcionalidad de la aplicacion HTML me tope con un pequeño problema: Los servicios en determinados escenarios se encimaban y acababa con datos viejos, datos duplicados, etc. Mi primer idea para solucionarlo fue pausar o cancelar las llamadas pero este enfoque no me gustaba ya que estoy mas acostumbrado al commandchain de Swiz en flex; por eso busque (y encontre) otro plugin de jQuery para crear una cola de llamadas AJAX: AJAX Queue/Cache/Abort/Block Manager v. 3.0
Este genial plugin soporta procesar multiples peticiones de forma paralela O en serie. La implementacion fue completamente transparente ya que en vez de hacer un $.ajax(), lo que hice fue (como viene ejemplificado en la pagina de documentacion) iniciar el administrador de peticiones y encolar las peticiones necesarias.
Otras opciones interesantes de este plugin:
- Cache de respuestas
- Queue
- Abortar llamadas anteriores
- Abortar llamadas no exitosas
- Numero maximo de solicitudes
Un breve ejemplo y la url:
//create an ajaxmanager named cacheQueuevar ajaxManager = $.manageAjax.create('cacheQueue', { queue: true, cacheResponse: true});
//and add an ajaxrequest with the returned objectajaxManager.add({ success: function(html) { $('ul').append('
- ‘+html+’
'); }, url: 'test.html'});
