Как отправить POST запрос следующего вида:
POST /gate/ki-site-api/ HTTP/1.1
Host: api.site.ru
Cache-Control: no-cache
Content-Type: application/x-www-form-urlencoded
id=get_pdf&username=username¶ms=...
Пробую сделать так:
<?
ini_set('display_errors',1);
error_reporting(E_ALL);
$url = 'https://api.site.ru/gate/sie-api/';
$data = array('id' => 'make_pdf', 'username' => 'username','account_id' =>'1152289', 'period_id' => '201705');
$params = array(
'http' => array(
'header' => "Content-type: application/x-www-form-urlencoded\r\n",
'method' => 'POST',
'content' => http_build_query($data)
)
);
$context = stream_context_create($params);
$result = file_get_contents($url, true, $context);
if ($result === FALSE)
var_dump($result);
?>
Получаю ответ:
HTML> string(51) "{"err_msg": "Authorization failed.", "err_code": 1}"
Из документации:
Для того, чтобы обратиться к конкретному методу API, Вам необходимо отправить запрос методом POST на адрес ROOT URL. Этот запрос должен содержать следующие обязательные параметры:
id - идентификатор метода, который Вы намерены вызвать. Например, get_main_id. См. раздел соответствующей группы методов.
username - ваше имя пользователя - username.
Не могу понять как пройти авторизацию и получить нужные данные.