Visualizzazione dei risultati da 1 a 7 su 7

Discussione: XHR e timeout

  1. #1

    XHR e timeout

    Mi aiutate a capire una cosa?

    Passo subito al sodo:
    ho un'applicazione Web che fa una chiamata 2.0 per la conversione di un file MOLTO grosso in SWF; la chiamata può avere la forma (1) o (2) di cui sotto, le ho provate entrambe.

    -> Fino a che il server non termina il suo compito, la chiamata rimane aperta ed il browser accoda le successive chiamate XHR. Ho quindi il browser bloccato fino a che la chiamata non termina.

    Domande:
    1. c'è modo di ovviare senza un timeout della chiamata (parallelizzare le XHR) ?
    2. perchè se metto i timeout (decommentando i commenti sotto), il browser, pur presentando l'alert timeout, rimane lo stesso "bloccato" ?

    Ho provato sia su Win che su nix, sia con Apache prefork mode che thread, ed anche con lighttpd...

    Grazie.

    (1)
    codice:
    dojo.xhrGet(
            {
            url: "interface.controlCenter.php?makeSwf&bookletId=<?php echo $bookletId;?>&fileName="+fileNames,
     
            preventCache: true,
            //timeout: 10000,
            load: function(response, ioArgs) { updateInternalFilesGrid(); },
            //error: function(response, ioArgs) { alert("Timeout."); }
            });
    (2)
    codice:
       var uri = "interface.controlCenter.php?makeSwf&bookletId=<?php echo $bookletId;?>&fileName="+fileNames;
            if (typeof XMLHttpRequest!="undefined") xmlhttpmsif = new XMLHttpRequest();
            else if (typeof window.ActiveXObject!="undefined") xmlhttpmsif = new ActiveXObject("Microsoft.XMLHTTP");
            else return false;
     
            xmlhttpmsif.open("GET",uri,true);
            xmlhttpmsif.onreadystatechange = function()
                {
                if (xmlhttpmsif.readyState==4) 
                    updateInternalFilesGrid();
                }
            xmlhttpmsif.send(null);
            //window.setTimeout("alert('Timeout.'); xmlhttpmsif.abort();",10000);  // just to test.
    &nbsp;
    :: Instant WebKiosk, a browser-only Linux operating system ::

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Cosa intendi con questa frase:
    ho un'applicazione Web che fa una chiamata 2.0 per la conversione di un file MOLTO grosso in SWF;
    Vorresti inviare dati binari (immagini/doc/pdf/etc..) al server?
    Questa guida l'hai già letta?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Originariamente inviato da cavicchiandrea
    Cosa intendi con questa frase:
    ho un'applicazione Web che fa una chiamata 2.0 per la conversione di un file MOLTO grosso in SWF;
    Vorresti inviare dati binari (immagini/doc/pdf/etc..) al server?
    No, il file office da convertire in swf è già sul server, viene solamente fatta la richiesta di conversione con una GET.

    Questa guida l'hai già letta?
    Sì, ho inserito per il test il codice:
    window.setTimeout("alert('Timeout.'); xmlhttpmsif.abort();",10000); // just to test.
    che alla fine fa quanto dice la guida (con meno accuratezza ovviamente, ma è un test).
    Però il problema rimane appunto esattamente come descritto.
    &nbsp;
    :: Instant WebKiosk, a browser-only Linux operating system ::

  4. #4
    su
    &nbsp;
    :: Instant WebKiosk, a browser-only Linux operating system ::

  5. #5
    su
    &nbsp;
    :: Instant WebKiosk, a browser-only Linux operating system ::

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova a mettere una demo online, poi posta qui il link, forse una dimostrazione esplica meglio il problema
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Le chiamate XHR riguardano: http://doc.archinizer.it
    Vale un po' per tutte, anche se non ci si accorge fino a che una tra esse non si "pianta"...
    &nbsp;
    :: Instant WebKiosk, a browser-only Linux operating system ::

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.