прикрепить файл как тип содержимого multipart / form-data — Laravel

Я использую FreshDesk API в качестве системы тикетов. При попытке отправить вложение было указано, что оно должно быть отправлено как multipart / form-data content-type. Может ли кто-нибудь объяснить, как это делается ?!
Как я отправляю вложения:

$json = json_encode(
array(
"helpdesk_note" => array(
"body" => Input::get('reply'),
"user_id" => $requester_id,
"attachments" => Input::get('photo'),
"private" => true
)
)
);

1

Решение

Я не знаю, как вы запрашиваете API, но в случае, если вы используете CURL, просто установите соответствующий заголовок:

curl_setopt($ch , CURL_HTTPHEADER , "Content-Type: multipart/form-data" );

Лично я бы порекомендовал пропивать который имеет чистый и прямой API.
В Guzzle вы можете изменить ваши заголовки более OO-Way. Есть несколько способов выполнить вашу задачу. По возможному подходу может быть:

$client = new GuzzleHttp\Client();
$request = $client->createRequest('POST', 'https://url.com/to/post/to');
$request->setHeader('content-type', 'multipart/form-data');
// Set the data you need to

$response = $client->send($request);
var_dump($response);

Кстати, жадность — это кусок пирога, который нужно интегрировать с Laravel. Просто потребуйте это в своем composer.json и ты в порядке!

0

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

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

По вопросам рекламы [email protected]