Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/01/2013, 07:37
Avatar de h2swider
h2swider
 
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
307 Temporaly redirect

Tengo un sistema para mostrar turnos que funciona haciendo un poll (llamando un ajax cada 10 segundos todo el tiempo, y preguntando si hay un nuevo turno).

Tanto la vista html, como el js y el php que entrega la información funcionan correctamente, pero luego de algunos request, recibo un 307 en vez de un 200, apareciendo en pantalla un alert y arruinando la finalidad de la pantalla

Existe alguna manera de evitar el response 307? no encuentro un handler que ande desde js, o tal vez con algun header en el hp, la verdad que no tengo idea que hacer :/



Código PHP:
Ver original
  1. <?php
  2.  
  3. require_once('../../header.inc.php');
  4.  
  5. if (isset($_POST['colas']) && !empty($_POST['colas'])) {
  6.  
  7.     $svcColasxUop = ServiceFactory::getService('colaxuop');
  8.     $respuesta = Array();
  9.  
  10.     $counter = 0;
  11.     foreach ($_POST['colas'] as $cola) {
  12.  
  13.         list($id_uo, $id_cola) = explode('-', $cola);
  14.  
  15.         $ultimo_numero = $svcColasxUop->colaMonitor($id_uo, $id_cola);
  16.        
  17.         if ($ultimo_numero) {
  18.            
  19.             foreach ($ultimo_numero as $num) {
  20.  
  21.                 $respuesta[] = $num;
  22.                 $counter++;
  23.             }
  24.         } else {
  25.             $temp_array['num_atencion'] = 0;
  26.             $temp_array['id_uo'] = $id_uo;
  27.             $temp_array['id_cola'] = $id_cola;
  28.             $temp_array['desc_puesto'] = '  ';
  29.             $temp_array['id_puesto'] = '  ';
  30.             $respuesta[] = $temp_array;
  31.         }
  32.  
  33.  
  34.         $counter++;
  35.     }
  36.     echo json_encode($respuesta);
  37. }
  38. ?>

Código Javascript:
Ver original
  1. var particular = {
  2.    
  3.     init: function(){
  4.          
  5.         var inter = function(){
  6.              
  7.             poll();
  8.             setInterval(
  9.                 function() {
  10.                     poll()
  11.                 }, 10000 );
  12.  
  13.         }
  14.    
  15.         var poll = function(){
  16.                        
  17.             $.ajax({
  18.                 url: 'ajax/ajax_monitor.php',
  19.                 type: 'POST',
  20.                 timeout:10000,
  21.                 dataType: 'JSON',
  22.                 data: ({
  23.                     colas: arreglo
  24.                 }),
  25.                 success: function(respuesta){
  26.                    
  27.                 //Todo
  28.                 }
  29.             });
  30.         };
  31.  
  32.         inter();
  33.     },
  34.    
  35. }
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives

Última edición por h2swider; 08/01/2013 a las 07:43