我正在使用HTML5 Filesystem API的Chrome应用程序,并允许用户导入和同步文件。我遇到的一个问题是,如果用户尝试同步图像文件,则在上载过程中文件会损坏到服务器。我假设这是因为它们是二元的。使用纯JavaScript上传二进制文件
对于上传,我选择了只是做一个Ajax POST请求(使用MooTools),然后把文件内容作为请求的主体。我告诉MooTools关闭urlEncoding并将字符集设置为“x-user-defined”(不确定是否有必要,我只是在某些网站上看到它)。
鉴于Chrome不支持xhr.sendAsBinary,有没有人有任何示例代码可以让我通过Ajax发送二进制文件?
使用base64和JavaScript函数'atob'和'btoa'会不会更高效? – 2011-12-28 00:31:32