Отправка голосового файла в API (laravel) — 5.4

#php #laravel

#php #laravel

Вопрос:

Я пытаюсь отправить голосовой файл в мой api, встроенный в laravel. В моем коде все кажется правильным, но когда я отправляю файл в свой api, я проверяю на своей стороне api, есть ли в отправленных данных файл, содержащийся в нем, но я продолжаю получать false. Я неправильно отправляю свой голосовой файл.

Путь: абсолютный путь

Версия PHP: 7.0

  $endPoint = 'https://api.domain.com/api';
        $apiKey = '**********';
        $url = $endPoint . '?key=' . $apiKey;
        $curlFile = new CurlFile('/Users/public/Voice/aaaah.wav');
        $data = [
           'message' => 'First Voice',
           'file' => $curlFile,
        ];  
        $ch = curl_init();
        $headers = array();
        $headers[] = "Content-Type: multipart/form-data";
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
        $result = curl_exec($ch);
        $result = json_decode($result, TRUE);
        curl_close($ch);     
        return $result;
  

Комментарии:

1. разве это не должно быть $url = $endPoint . ‘?key =’ . $Key;

2. Переменная $ apiKey кажется неопределенной.

3. Спасибо. это была просто опечатка

4. также это опечатка? $CURLFile = new CURLFile(‘/Users/public/Voice/aaaah.wav’); должна ли быть обратная косая черта перед CURLFile?