0
我正在使用以下代碼通過api上傳文件。 但我發現上傳後文件內容類型錯誤(僅爲26字節左右)。 內容類型將是$ data_string的長度。 我試圖將內容長度更改爲上傳文件的文件大小。 但之後,該API不工作。是我做錯了什麼編碼?通過PHP curl將文件上傳到api時的內容長度問題。
$data = array("Content" => "file.wav"); //around 4mb
$data_string = json_encode($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'URL');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_BINARYTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-type: audio/wav',
'Content-Length: ' . strlen($data_string))
);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$data = curl_exec($ch);
curl_close($ch);