1

我有可以从 dropbox.com 下载的 Web 应用程序。该应用程序是使用 Javascript 编写的。我正在使用在客户端上运行的dropbox.min.js http://code.google.com/p/dropbox-js/库。这是库的一个功能:

client.readFile(name, function(error, data) {
   if (error) {
      return showError(error);  // Something went wrong.
   }
   saveFile(name, data);
});

saveFile(name, data)我的功能是执行以下操作:

var saveFile = function(file, data)
{
    var xmlhttp = getXmlHttp(); 
    xmlhttp.open('POST', 'saving.php', true); 
    xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 
    xmlhttp.send("fileName=" + file + "&data=" + data); 

}

function getXmlHttp(){
    var xmlhttp;
    try {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (E) {
            xmlhttp = false;
        }
    }
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
        xmlhttp = new XMLHttpRequest();
    }
    return xmlhttp;
}

问题是:当我尝试下载资产(例如 jpg doc、gif 等)时,我只收到 1kb 而不是完整文件。有什么解决方法吗?

4

1 回答 1

0

官方 JavaScript 库可以在支持 XHR 级别 2(Chrome、Firefox、IE 10)的浏览器中下载二进制文件。

参见入门文档中的示例代码,调用时使用该blob: true选项readFile

于 2012-11-26T04:31:38.817 回答