我正在尝试使用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已被删除。.......