我正在开发我的开源项目Downloadify,到目前为止,它只是处理返回字符串以响应ExternalInterface.call
命令。
我正在尝试使用JSZip和 Downloadify 组合一个测试用例,最终结果是在浏览器中动态创建一个 Zip 文件,然后使用FileReference.save
. 但是,这是我的问题:
JSZip 库可以返回base64
Zip 的编码字符串或原始字节字符串。问题是,如果我返回该字节字符串以响应ExternalInterface.call
命令,我会收到此错误:
Error #1085: The element type "string" must be terminated by the matching end-tag "</string>"
动作脚本 3:
var theData:* = ExternalInterface.call('Downloadify.getTextForSave',queue_name);
wherequeue_name
只是一个字符串,用于在 JS 中识别正确的实例。
JavaScript:
var zip = new JSZip();
zip.add("test.txt", "Hello world!\n");
var content = zip.generate(true);
return content;
如果我改为返回普通字符串而不是字节字符串,则调用可以正常工作。我想避免使用base64
,因为我必须在其中包含一个base64
解码器,swf
这会增加它的大小。
最后:我不是在寻找 AS3 Zip 生成器。我的项目必须让该部分在 JavaScript 中运行
诚然,我不是一名 AS3 程序员,所以如果您需要更多详细信息,请告诉我。