使用PHP CURLFile上传Dropbox

时间:2019-06-17 17:25:09

标签: php dropbox dropbox-api php-curl

我正在尝试使用PHP新的CURLFile将文件上传到Dropbox API,但我一直在获取

  

path / not_found / ..

我正在使用PHP> 7

,代码片段如下:-

.....
    $curl_opts = [CURLOPT_HEADER => false, // exclude header from output
                    CURLOPT_RETURNTRANSFER => true, // but return!
                    CURLOPT_SSL_VERIFYPEER => false];
    $curl_opts[ CURLOPT_HTTPHEADER ] =  [
            "Authorization" => "Bearer " . $this->getToken(),
            "Content-Type" => "application/octet-stream",
            "Dropbox-API-Arg" => json_encode($params)
          ];
    $curl_opts[ CURLOPT_POSTFIELDS ] = ['file' => new CURLFile($_FILES['tmp_name'], null, $_FILES['name']) ];
    $curl_opts[ CURLOPT_CUSTOMREQUEST ] = 'POST';
    curl_setopt_array($ch, $curl_opts);
    ...

如何使用CURLFile发送到DropBox文件/上传端点?

正在发送的数据如下:-

  

Array([42] => [19913] => 1 [64] => [10036] => POST [10015] =>数组   ([0] => CURLFile对象([name] => / tmp / phpTra0RG [mime] =>   application / octet-stream [postname] => BAR-TENDER-BIO-FORM.docx))   [10023] =>数组([0] =>内容类型:应用程序/八位字节流1   =>授权:不记名的已删除,[2]   => Dropbox-API-Arg:{“路径”:“ / GCC2020 / 2019-06-17 / zone-8 / azerbaijan / fulle / BAR-TENDER-BIO-FORM.docx”,“模式”:“覆盖”, “ autorename”:false,“ mute”:true,“ strict_conflict”:false}   ))

路径令牌和文件似乎都是合法的。 CURLFile是否可以处理来自tmp_name的{​​{1}}文件路径?

更新

似乎我的错误可能与this question有关,由于我发送了数组,PHP Curls似乎要添加边界标记。 $_FILES

老实说,我不确定如何在不使用'@'的情况下发送新的CURLFile(),因为我使用的PHP已被删除。.......

0 个答案:

没有答案