识别Flex中FileReference对象为PNG图像编码的数据的性质

vet*_*yan 6 javascript file-upload flex3

我正在尝试将基于Flex的应用程序迁移到JavaScript,并遇到文件上传功能,该功能会将PNG图像发送到服务器。我无权访问服务器代码,因此我试图模仿flex应用程序发出的请求。Flex应用程序发送的请求数据如下所示:

在此处输入图片说明

我的请求数据使用Filereader.readAsBinaryString()读取PNG,如下所示:

在此处输入图片说明

如您所见,flex应用程序执行了一些我无法弄清楚的编码。尽管两个内容看起来都一样,但是还是有一些细微的差别,这可以通过每种内容的长度来确认。AS3 FileReference文档指示它使用load()函数将文件内容转换为ByteArray 。有人可以解释他们如何编码吗?

vet*_*yan 2

我找到了解决方案。我尝试使用 FileReader.readAsArrayBuffer 来读取数据。它完成了 Flex 所做的事情。