• User Attivo

    [Risolto] .loadVariables e problemi di refresh nel browser

    Ciao a tutti,
    mi capita una cosa bizzarra.
    Devo realizzare un banner che carica dinamicamente dati da una sorgente txt.
    Ho usato la loadVariables, e in maniera molto semplice funziona tutto.

    Il file txt viene generato da uno script php, collegato ad una piccola interfaccia di amministrazione, dalla quale un utente possa aggiornare i dati.

    Lo script è corretto, ovvero genera il txt in maniera corretta.
    L'swf è giusto, carica i dati in maniera corretta.

    Il problema nasce quando carico l'swf in una pagina, se aggiorno i dati dall'interfaccina di amministrazione, l'swf caricato, non si aggiorna. O meglio, si aggiorna a volte si, a volte no :?.

    Pensavo fosse un problema di ricaricamento pagina (teoricamente, se ricarico la pagina, l'swf riparte da 0 ergo, rifa il loadVariables e via dicendo).
    Ma non è così.
    Non si aggiornano nemmeno se chiudo il browser e lo riapro, da cui deduco sia un problema di caching. C'è modo di risolverlo lato script?

    Grazie fin da ora:)

    Meryk


  • Super User

    Ciao meryk,

    se è la parte txt che non viene aggiornata aggiunge nel fla al momento che carica il file txt un cosa del tipo:

    
    "myfile.txt?blarg="+new Date().getTime()
    
    

    Il quale aggiunge la data al file e lo rende sempre unico. No caching.

    se invece sono modifiche al swf stesso che non vengono aggiornate, la soluzione più facile (va bene se non viene aggiornato spesso) è di rinominare il swf stesso ogni volta.

    :ciauz:


  • User

    che dicono gli headers http?
    prova a sniffare e vedere se alla GET dell'swf dal webserver arriva un 200 o un 304.
    Ho avuto anche un io un problemino del genere ed alla fine abbiamo constatao che per ragioni tutt'ora occulte alla richiesta di un swf puo' arrivare (arbirariamente) un 304. La cosa piu' divertente e' che le tecniche piu' tradizionali di cachebusting non aiutano. Abbiamo dovuto agire direttameente sulla comunicazione client/server per risolvere la cosa 🙂


  • User Attivo

    @Onsitus said:

    Ciao meryk,

    >
    "myfile.txt?blarg="+new Date().getTime()
    
    >```Il quale aggiunge la data al file e lo rende sempre unico.  No caching.
     
    
    
    Grande! funziona!
    grazie mille :D

  • Super User

    Il problema è loadVariables, metodo di Actionscript obsoleto e quindi non puoi interagire perfettamente con il server.

    Quello che ha scritto Onsitus garantisco che lavora al 100% con la classe LoadVars o ancora meglio con la chiamata navigateToURL di Actionscript 3.0 .

    Con loadVariables Adobe stessa non garantisce più nulla in quanto è un metodo vecchio di almeno 5 anni.


  • User

    @Onsitus said:

    ipo:

    
    "myfile.txt?blarg="+new Date().getTime()
    
    

    Questo e' interessante! 🙂
    in effetti non avevo pensato al fare del cachebusting sul file da includere 🙂

    really interesting 🙂


  • Super User

    @Flep said:

    Il problema è loadVariables, metodo di Actionscript obsoleto e quindi non puoi interagire perfettamente con il server.

    Quello che ha scritto Onsitus garantisco che lavora al 100% con la classe LoadVars o ancora meglio con la chiamata navigateToURL di Actionscript 3.0 .

    Con loadVariables Adobe stessa non garantisce più nulla in quanto è un metodo vecchio di almeno 5 anni.

    Vero. Personalemente l'ho sempre usato con loadVars.:imb: