I've been having no luck getting Flex to decompress some data I've
compressed using a tool based on zlib. I've tried the same code using
AIR where I can specify the compression method and the data *does*
decompress correctly. Below is a bit of code to give the idea:

      public function onComplete(event:Event) : void{
        var loader:URLLoader = URLLoader(event.target);
        //var info:String = loader.data;
        //trace(info);
                        var ba:ByteArray = new ByteArray;
                        ba = loader.data as ByteArray;
                        ba.position = 0;
                        // The next line of code fails with error #2058 every 
time using Flex.
                        // Under AIR - you can get it to work by specifying the
decompression method as DEFLATE.
                        ba.uncompress();
                        // For the AIR application, the line above is
                        //      ba.uncompress(CompressionAlgorithm.DEFLATE);
                        var bytes:String = bytes = ba.toString();
                        Alert.show(bytes.toString()); // AIR shows the original 
string,
Flex never gets this far.
      }

A couple of questions:

* Does it matter what MIME type is set on the Web server for the
content? If so, what MIME type is likely to work.

* What decompression method exactly does the Flash player support?
I've read "deflate" - which AIR seems to handle when I specify
DEFLATE.

* Perhaps there's something messed up in my compression data - would
someone be willing to post some kind of 'hello world' in plain text
and compressed form that is known to work with ByteArray.uncompress()?
>From there, I can experiment and see if I can tinker with my
compression settings (or switch compression libraries) until I get a
match.

Thanks in advance for any help.

Reply via email to