2015-01-19 2 views
1

Dropbox에서 파일을 다운로드하고 Dropbox 사용자 대신 내 서버에 보관해야합니다. curl 및 file_get_contents로 시도했습니다. 그러나 성공하지 못했습니다. dropbox의 API 메소드를 사용해야합니까? 브라우저에서 파일을 다운로드 할 수 있었지만 서버에 보관해야합니다. 내 응용 프로그램은 일종의 파일 공유입니다.파일을 Dropbox에서 서버로 다운로드

+0

XY는 == 사실은 당신이 API를 필요로 할 때 X는 당신은 어떤 API를 필요로하지 않을 때 ... 때 아무것도 대답을 볼 수 없습니다 ... 당신의 코드를 보여주십시오, ** 무엇을했는지 ** ** 당신을 위해 작동하지 않습니다 ** – donald123

+0

@binoy 아래에서 대답을 찾았습니까? – akhilesh1988

답변

2

Dropbox 브라우저 클라이언트는 사용자가 로그인해야하는 등록 된 사용자 만 사용할 수 있도록 개발되었으며 사용자는 여기에서 파일에 액세스 할 수 있습니다.

하지만 Dropbox 파일에 액세스하려면 Dropbox Core API를 사용해야하며 사용자는 PHP Dropbox SDK을 사용하여 자신의 응용 프로그램을 만들 수 있습니다. 나는 다른 방법이 있다고 생각하지 않는다.

앞서 언급 한 것처럼 사용자를 대신하여 Dropbox에서 파일에 액세스하려고합니다. 사용자 상호 작용없이 생각할 수도 있지만 Dropbox는 OAuth 1.0 or 2.0을 사용합니다. 둘 다 방법, 당신은 사용자 상호 작용을해야합니다. (For More Read Here)

또한 당신은 당신의 응용 프로그램이 File Sharing의 일종이다, 그래서 공개적으로 검색 File Share 애플리케이션을 금지 Dropbox App Review Process 한 번 봐 걸릴 않습니다 말했다.

드롭 박스는 드롭 박스의 상단에 건물 공개적으로 검색 파일 공유 네트워크를 지원하지 않는 파일 공유 애플리케이션을 구축하지 마십시오.

1

파일에 대한 보관 용 공용 링크를 사용하고 file_get_contentsfile_put_contents을 사용할 수 있습니다. 아래 바닐라 PHP 예제.

<?php 
    // Custom Dropbox link. Notice the ?dl=1 at the end. 
    $url = file_get_contents('https://www.dropbox.com/s/hash/file.mp4?dl=1'); 

    // Your new file name 
    $file = "downloaded-video.mp4"; 

    // open, write and close the new file 
    file_put_contents($file, $url); 
?> 

일반적으로 서비스 제공 업체의 API가 데이터에 액세스하는 가장 좋은 방법입니다. 확실히이 방법이 더 좋을 것입니다.

내 유일한 참고 사항은 Dropbox의 ToS를 깨지 않도록주의하십시오.

0

/download를 사용할 수 있습니다. 그것은 다음과 같이 응답을 반환합니다

{ 
"name": "Prime_Numbers.txt", 
"id": "id:a4ayc_80_OEAAAAAAAAAXw", 
"client_modified": "2015-05-12T15:50:38Z", 
"server_modified": "2015-05-12T15:50:38Z", 
"rev": "a1c10ce0dd78", 
"size": 7212, 
"path_lower": "/homework/math/prime_numbers.txt", 
"path_display": "/Homework/math/Prime_Numbers.txt", 
"sharing_info": { 
    "read_only": true, 
    "parent_shared_folder_id": "84528192421", 
    "modified_by": "dbid:AAH4f99T0taONIb-OurWxbNQ6ywGRopQngc" 
}, 
"property_groups": [ 
    { 
     "template_id": "ptid:1a5n2i6d3OYEAAAAAAAAAYa", 
     "fields": [ 
      { 
       "name": "Security Policy", 
       "value": "Confidential" 
      } 
     ] 
    } 
], 
"has_explicit_shared_members": false, 
"content_hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" 

}

여기에 자세한 설명을 참조하십시오 https://www.dropbox.com/developers/documentation/http/documentation#files-download

관련 문제