2012-09-30 10 views
1

我有可以從dropbox.com下載的web應用程序。該應用程序使用Javascript編寫。我正在使用運行在客戶端上的dropbox.min.jshttp://code.google.com/p/dropbox-js/庫。 這是庫的函數:無法使用Javascript從dropbox.com下載文件?

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文檔,GIF,等等),我只收到1kb而不是完整的文件。有沒有解決方法?

+0

問題(拋開'saveFile'函數中的其他錯誤)是,您無法使用「application/x-www-form-urlencoded」內容類型將二進制數據發送到HTTP上。 'data'有什麼類型?您鏈接到的Google代碼項目對我來說看起來是空的,它沒有看到任何源代碼。 – Tomalak

+0

svn/trunk目錄中有源代碼。 (源代碼 - >瀏覽 - > svn - > trunk) – 2012-09-30 17:48:33

+0

我試圖下載JPG,DOC等。另外我試圖將內容類型更改爲image/jpg,但沒有任何事情發生。 – nonameg

回答