У меня есть приложение Zf2, которое взаимодействует с другим приложением Zf2 через вызовы RestAPI.
Я могу общаться между собой, используя следующий код и параметры обмена:
//Prepare request
$request = new Request();
$request->getHeaders()->addHeaders(array(
'Content-Type' => 'application/x-www-form-urlencoded; charset=UTF-8'
));
$request->setUri($p_url);
$request->setMethod('POST');
$request->setPost(new Parameters($p_params));
$client = new Client();
//Send request
$client->resetParameters();
$response = $client->dispatch($request);
$data = json_decode($response->getBody(), true);
Теперь я хотел бы сделать то же самое, но с многокомпонентным вызовом: файлы Json +.
Как я могу это сделать? Я пробовал несколько решений от использования метода setFileUpload клиента до записи параметров заголовков с типом содержимого (multipart / form-data), content-disposition, ... безуспешно.
В ходе тестов я использовал Wireshark для проверки содержимого запроса. В зависимости от того, какое решение я пробовал, у меня возникает ошибка «отсутствует граница» или ошибка HTTP 405.
Спасибо за вашу помощь. Лучший





Наконец я нашел решение
$this->_client->setUri($p_url);
$this->_client->setMethod('POST');
//Prepare for upload
$this->_client->setFileUpload($p_file, 'file');
//Set parameters along with file
$this->_client->setParameterPost($p_params);
//Send request
try {
$response = $this->_client->send();
} catch ( \Exception $ex ) {
}