2017-10-07 146 views
0

虽然通过API上传文件到我的收存箱文件夹,我得到这样的回应:Dropbox的文件上传

(
    [error_summary] => path/conflict/file/.. 
    [error] => Array 
    (
     [.tag] => path 
     [reason] => Array 
      (
       [.tag] => conflict 
       [conflict] => Array 
        (
         [.tag] => file 
        ) 

      ) 

     [upload_session_id] => AAAAAAAAMDWI9yGIglA8Lg 
    ) 

    ) 

任何人都可以建议我一个解决方案吗?

此回复是由于已经有一个带有这个名称的文件存在于保管箱文件夹或代码问题中吗?

这是我的文件上传代码,

$cheaders = array('Authorization: Bearer '.$dptoken, 
       'Content-Type: application/octet-stream', 
       'Dropbox-API-Arg:'.$query); 


    $ch = curl_init('https://content.dropboxapi.com/2/files/upload'); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, $cheaders); 
    curl_setopt($ch, CURLOPT_PUT, true); 
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST'); 
    curl_setopt($ch, CURLOPT_INFILE, $fp); 
    curl_setopt($ch, CURLOPT_INFILESIZE, $size); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    $response = curl_exec($ch); 
    $droplist = json_decode($response,true); 

回答

0

你可以看一下这些错误的含义the Dropbox API v2 HTTP endpoint documentation

例如,对于/2/files/upload,点击通过扩大path/conflict/file

有一个在路上的文件。

所以,这表示上传失败,因为在指定的路径中已经有一个文件。请阅读上面的WriteMode文档,以获取有关如何处理这些方案的更多信息。