Pregunta

Tengo una aplicación AS3 que carga varios SWF en tiempo de ejecución. La animación de carga que se está utilizando tiene una animación bastante larga de entrada y salida que no quiero mostrar si el swf objetivo está en el caché del navegador.

Entonces, en el momento en que cada SWF se carga según sea necesario con Greensock's Cargador de swf de manera básica:

var context:LoaderContext = new LoaderContext();
context.applicationDomain = ApplicationDomain.currentDomain;
loader = new SWFLoader("mySWF.swf", {name:"sectionLoader",context:context,auditSize:true,onOpen:onLoadInit,onProgress:onLoadProgress, onComplete:onCompleteLoadHandler, onError:onLoadErrorHandler});
loader.load();

Mi objetivo es hacer algo antes de llamar loader.load(); Para determinar si la operación de carga requerirá la solicitud para ir más allá del caché del navegador, pero antes de entrar en R & ding, algo, pensé que preguntaría si alguien ya ha hecho algo similar.

Algunos pensamientos más que he tenido hasta ahora:

  • Simplemente realizar un seguimiento de lo que se ha cargado en AS3 no es lo suficientemente bueno porque si el usuario borra su caché, podría quedarse cargando un SWF grande en una conexión lenta sin indicador.
  • Podría una combinación de Loaderitem.httpstatus y Loaderitem.auditsize () ¿Vale la pena investigar?
  • ¿Hay un mejor marco de carga para AS3 que debería estar investigando en lugar de las clases de Greensock?
  • Idealmente, preferiría tener algún tipo de detección de versión para abarcar sesiones que podrían estar separadas por meses, pero un paso a la vez.
¿Fue útil?

Solución

Cuando realiza cualquier solicitud HTTP, la respuesta se le ocurre la propiedad httpstatus. En AS3 solo necesitas checar si

Httpstatusevent.status == 304

Y para httpStatus en la biblioteca de Greensock.

Básicamente, el código 304 significa que no se han realizado CHages en el lado del servidor al recurso que el usuario ha solicitado. Lo que eventualmente lleva a la conclución de que el recurso está en el caché.

ACTUALIZAR

Si esto no se ajusta a sus necesidades, intente almacenar alguna variable si reproduce la animación o no en cookies o en variables de sesión.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top