2012-09-30 1 views
1

dropbox.com에서 다운로드 할 수있는 웹 응용 프로그램이 있습니다. 응용 프로그램은 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; 
} 

문제가있다 : I (예 : JPG 문서, GIF를 자산을 다운로드하는 것을 시도하고있는 동안, 등), 전체 파일 대신 1kb 만받습니다. 해결 방법이 있습니까?

+0

문제는 ('saveFile' 기능의 다른 버그)'application/x-www-form-urlencoded'' 콘텐츠 유형을 사용하여 HTTP를 통해 바이너리 데이터를 보낼 수 없다는 것입니다. '데이터'에는 어떤 유형이 있습니까? 연결 한 Google 코드 프로젝트가 비어있는 것처럼 보입니다. 소스 코드가 표시되지 않습니다. – Tomalak

+0

svn/trunk 디렉토리에 소스 코드가 있습니다. (소스 -> 찾아보기 -> svn -> 트렁크) –

+0

jpg, doc 등을 다운로드하려고합니다. 또한 콘텐츠 유형을 image/jpg로 변경하려고 시도했지만 아무 일도 없습니다. – nonameg

답변

0

official JavaScript library은 XHR 레벨 2 (Chrome, Firefox, IE 10)를 지원하는 브라우저에서 이진 파일을 다운로드 할 수 있습니다.

getting started document의 샘플 코드를보고 readFile을 호출 할 때는 blob: true 옵션을 사용하십시오.