Dropbox文件上传

时间:2017-10-07 04:59:06

标签: curl dropbox dropbox-api

通过API将文件上传到我的Dropbox文件夹时,我得到如下响应:

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

            )

        [upload_session_id] => AAAAAAAAMDWI9yGIglA8Lg
    )

   )

有人能建议我解决方案吗?

这个回复是否是因为Dropbox文件夹中存在此名称的文件?或代码问题?

这是我的文件上传代码,

    $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);

1 个答案:

答案 0 :(得分:0)

您可以在the Dropbox API v2 HTTP endpoint documentation中查找这些错误的含义。

例如,对于/2/files/upload,点击以展开path/conflict/file

  

路上有一个档案。

因此,这表明上传失败,因为指定路径上已存在文件。阅读上面的WriteMode文档,了解有关如何处理这些方案的更多信息。