actionscript - Cómo acceder a los datos de retorno URLLoader de AS3 en IOErrorEvent
(1)
Estoy escribiendo una biblioteca actionscript para una API. Uso un objeto URLLoader para cargar datos desde la API. El problema que tengo es que cada vez que la API devuelve un estado http en el 400s, actionscript trata esto como un error de io. Todo esto es bueno y lo que se puede encontrar, sin embargo, parece que no hay forma de acceder a los datos que se devolvieron si este es el caso. En consecuencia, se pierde cualquier xml útil sobre la causa del error que se devuelve. ¿Hay alguna forma de evitar esto? Hace que la biblioteca sea un poco dolorosa, si no puede haber información útil para los desarrolladores cuando la API devuelve un error. ¡Gracias por cualquier ayuda!
No puede obtener acceso a los datos en un evento de 400. Sin embargo, puede obtener el código de estado agregando un detector para el evento de estado HTTP.
Si controla el código de fondo, hay un par de soluciones:
Una opción es hacer que el servidor responda con 200 s incluso en casos de error al hablar con un cliente flash, pero con un código de error especial para que el cliente sepa que la respuesta 200 es en realidad un error.
Otra opción es establecer una cookie en el cliente que contiene el mensaje de error. Flash no puede acceder de forma nativa a las cookies, pero puede invocar a javascript utilizando ExternalInterface para leer la cookie, u opcionalmente el cliente puede hacer otro golpe a un controlador especial de fondo que lea la cookie y responda con un mensaje de error.