У меня есть следующий запрос CURL к API: curl -X POST -H "X-Api-Key:somekey" --data "[email protected]" https://api.test.com/accounts
Какой эквивалентный скрипт использовать в GuzzleHTTP Psr7. Я пробовал следующее, но не работал, он не получил массив данных $query.
$query = [
'name'=>'MyName',
'email'=>'[email protected]',
];
$client = new Client([
'base_uri' => 'https://api.test.com/v1/',
'verify' =>'cert.pem',
]);
$headers=['form_params'=>$query];
try{
$request = new Request('POST', 'accounts', $headers);
$response = $client->send($request);
} catch (\GuzzleHttp\Exception\ClientException $e) {
die($e->getResponse()->getBody()->getContents()); exit;
}
var_dump($response->getBody());
X-Api-Key
в$headers
(не параметры формы), а затем передать полную закодированную строку запросаname=myname&[email protected]
в параметре$body
, который следует за$headers
. Однако я не использовал более новые API-интерфейсы Guzzle, чтобы убедиться в этом. - person Michael Berkowski   schedule 16.05.2016