Конвертировать CURL в вызов PHP CURL, но получить ошибку авторизации

Я звоню cURL, как показано ниже, но хотел преобразовать в формат PHP

curl https://apis.voicebase.com/v2-beta/media \
--header "Authorization: Bearer $token" \
--form media=@/home/harshal/Desktop/100Hz_44100Hz_16bit_30sec.wav\
| tee media-post-response.json | jq '.'

Выше cURL хотел перейти в формат PHP, как показано ниже

    set_time_limit(0);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_LOW_SPEED_LIMIT, 0);
curl_setopt($ch, CURLOPT_LOW_SPEED_TIME, 60);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 300);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
$result = json_decode(curl_exec($ch),TRUE);
curl_close($ch);

но получаю ошибку авторизации, но когда я передаю параметры в cURL как токен & audioUrl это работает. но это не работает, когда передать параметры, как указано выше php CURL_OPT

0

Решение

Оформить заказ php curl официальное руководство , это говорит:

CURLOPT_HTTPHEADER
An array of HTTP header fields to set, in the format array('Content-type:   text/plain', 'Content-length: 100')

Поэтому я думаю, что вам нужно изменить свой $header в $header = array("Authorization: Bearer ${token}")

0

Другие решения

Других решений пока нет …