我有一个字符串保存到由 Actionscript 通过 base64 编码然后 zlib 压缩它的数据库。
示例字符串如下:“eNrj4mZkrShgWdHBx1mUmJfNosQIACUhBCI="
如果我通过 Actionscript 解压缩并取消 base64,我会得到我所期望的:
{“xp”:656398,“等级”:34}
但是,我还需要能够读取这个服务器端。现在我正在使用 Python,但我愿意接受一个有效的 PHP 解决方案或类似的解决方案。
到目前为止,在 Python 中我已经尝试过这个:
import base64
import zlib
s = 'eNrj4mZkrShgWdHBx1mUmJfNosQIACUhBCI='
print s.decode("base64").decode("zlib")
看起来 Actionscript 在标头中添加了一些额外的位,但我的 Python 不够强大,无法解决这个问题 :) 任何帮助将不胜感激!
编辑:Actionscript 首先获取一个 AS 对象并将其转换为 ByteArray,然后再进行 zlib 压缩并对其进行 base64 处理。看起来这就是生成额外标题/损坏数据信息的原因。