Извините за смутное название, я не использую curl достаточно часто, чтобы знать, что такое правильные термины. По сути, я пытаюсь преобразовать вызов curl из командной строки, который включает в себя загрузку файла, в сценарий PHP, используя curl_init et c.
Параметр curl командной строки имеет такие параметры, как -F query='...' -F variables[file]=@/mnt/d/temp/test.jpg
. Вызов команды curl через командную строку работает нормально, поэтому серверная часть работает. Моя проблема, когда я пытаюсь это сделать, используя PHP. Моя проблема в том, что я не знаю, как правильно преобразовать синтаксис -F variables[file]=...
в сторону PHP curl.
Учитывая это, я пытаюсь это сделать:
$query = '...';
$cFile = curl_file_create("/mnt/d/temp/test.jpg");
$variables = array("file" => $cFile);
$post = array('query' => $query,'variables' => $variables);
curl_setopt($chObj, CURLOPT_POSTFIELDS, $post);
К сожалению, это возвращает HTTP 500.
Я также пытаюсь заменить переменную $ cFile на $cFile = '@' . realpath("/mnt/d/temp/test.jpg");
, тот же результат.
(Это также моя первая загрузка файла с использованием PHP curl, мой ссылка на приведенный выше код был таким SO вопрос: как загрузить файл с помощью curl с php)
Любой совет будет оценен. (Я бы сам это сделал в Google, но IDK соответствовал бы Google.)