Foros del Web » Programando para Internet » Javascript »

Es esto comet? o long polling

Estas en el tema de Es esto comet? o long polling en el foro de Javascript en Foros del Web. Buenas!! Vereis estoy intentando hacer un muro parecido al de facebbok y la cosa es que mirando infinidad de post parece que lo más adecuado ...
  #1 (permalink)  
Antiguo 10/04/2015, 04:51
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Es esto comet? o long polling

Buenas!!

Vereis estoy intentando hacer un muro parecido al de facebbok y la cosa es que mirando infinidad de post parece que lo más adecuado sería implimentarlo con comet. La cosa es que he encontrado algunos post pero no queda claro ri realmente se está usuando comet o no, uno de estos ejemplo sería este:

Código Javascript:
Ver original
  1. var xmlhttp = function()
  2.     {
  3.         var a;try{a = new XMLHttpRequest();}
  4.         catch(e){try{a = new ActiveXObject('Msxml2.XMLHTTP');}
  5.         catch(e){try{a = new ActiveXObject('Microsoft.XMLHTTP');}
  6.         catch(e){alert('Your browser doesn\'t support ajax');a=false;}
  7.         }}return a;
  8.     };  
  9.     window.onload = function()
  10.     {
  11.         var a = new comet();
  12.     };  
  13.     var comet = function()
  14.     {
  15.         var a = new xmlhttp();
  16.         a.open('post',window.location+"?"+Math.random()+"="+Math.random(), true);
  17.         a.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
  18.         a.onreadystatechange = function()
  19.         {
  20.             if(a.readyState == 4)
  21.             {
  22.                 document.getElementById('content').innerHTML = a.responseText;
  23.             }
  24.         };
  25.         a.send('algo=algo');                
  26.     };

Como digo no me queda claro si es comet o no igual que este:

Código Javascript:
Ver original
  1. this.request=function(url,callback,parms){
  2.         var vars_temp='';
  3.         for(var par in parms)
  4.             vars_temp=vars_temp+'&'+par+'='+parms[par];
  5.         vars=vars_temp;
  6. //      alert("URL: "+url+" | Callback: "+callback+" | Parms: "+vars);
  7.         var Comet=this.xmlhttp();
  8.             Comet.open('post',url+'?'+Math.random(),true);
  9.             Comet.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
  10.             Comet.onreadystatechange=function(){
  11.                 if(Comet.readyState==4){
  12. //                  alert("Comet.responseText: "+Comet.responseText);
  13.                     (callback||function(){})(Comet.responseText);
  14.                     Comet.abort();
  15.                     Comet=null;
  16.                 }
  17.             };
  18.             Comet.send(vars);
  19.     };
  20.     this.actualizarMensajes=function(){
  21.         var elwin=this;
  22.         this.request(this.configuracion.interfax,function(contenido){
  23.             var dom=elwin.dom(elwin.configuracion.divContenedor);
  24.             var data=(eval('('+contenido+')'));
  25.                 dom.innerHTML=data.mensajes;
  26.                 dom.scrollTop=dom.scrollHeight;
  27. //              alert("End! | "+elwin.ultimateId+" "+data.ultimaId);
  28.             elwin.ultimateId=data.ultimaId;
  29.             if(!data.conexion)
  30.                 document.location='index.php';
  31.             setTimeout(function(){
  32.                 elwin.actualizarMensajes();
  33.             },1000);
  34.         },{'indice':elwin.ultimateId});
  35.     };

Por último encontre está web en el que tienen un ejemplo: http://jsjoy.com/blog/197/simple-php-comet-example

A ver si alguien sabe decirme, y si no es comet pudieran indicarme algún ejemplo realmete si fuese comet.

Saludos!
  #2 (permalink)  
Antiguo 11/04/2015, 10:35
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Es esto comet? o long polling

Nadie sabe decir??

Etiquetas: ajax
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:39.