Здравствуйте, ув. сообщество. Помогите разобраться. Есть поставщик который отдает данные о товаре по протоколу REST. В описании поставщик указывает:
URL запроса,
HTTP метод : GET,
Заголовки запроса (request headers):
Authorization: Bearer [token]
Accept: application/json
Content-type: application/json
Параметры запроса:
kod_proizvoditelya ( массив содержащий список кодов товаров производителей)
Пробовал два варианта:
1-й
$opts = array(
'http'=>array(
'method'=> "GET",
'header' => "Content-Type: application/json\r\n".
"Accept: application/json\r\n".
"Authorization: Bearer туттокен\r\n",
'content' => array("kod_proizvoditelya=45346457"),
)
);
$context = stream_context_create($opts);
$file = file_get_contents('https://урлсервера', false, $context);
$data = json_decode($file);
print_r($data);
2-й
class Dadata
{
public function ApiPos($fields)
{
$result = false;
if ($ch = curl_init("https://урлсервера"))
{
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Accept: application/json',
'Authorization: Bearer туттокен'
));
curl_setopt($ch, CURLOPT_HTTPGET, 1);
// json_encode
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
$result = curl_exec($ch);
$result = json_decode($result, true);
curl_close($ch);
}
return $result;
}
}
$result = Dadata::ApiPos(array("kod_proizvoditelya" =>array( "5745745")));
print_r($result);
В этом случае возвращает Array ( [name] => Forbidden [message] => Доступ запрещен [code] => 0 [status] => 403 )
Подскажите, что не так делаю?