на основе Документация Я пытался сделать запрос GET.
Когда я делаю запрос GET через приложение POSTMAN, он работает нормально и возвращает правильный ответ, но когда я пытаюсь сделать тот же самый вызов через php (Laravel), я получаю код ошибки 401.
мой код для базовой аутентификации выглядит так:
namespace App;
use GuzzleHttp\Client;
class Api extends Model
{
static function TiktalikRespond(){
$client = new Client();
$base_encode = base64_encode(username:password);
$res = $client->get(
'https://www.tiktalik.com/api/v1/computing/instance',
['headers' => ['Authorization' => 'Basic '.$base_encode]]
);
$respond = $res->getBody();
return json_decode($respond);
}
}
мой код для ключа API выглядит так:
namespace App;
use GuzzleHttp\Client;
class Api extends Model
{
static function TiktalikRespond2(){
$client = new Client();
$sha1 = hash_hmac('sha1',
'GET \n \n application\json \n X-TK-Date \n https://www.tiktalik.com/api/v1/computing/instance',
'private_api_key');
$res = $client->get(
'https://www.tiktalik.com/api/v1/computing/instance',
['headers' => ['Authorization' => 'TKAuth API_KEY:'.$sha1]]
);
$respond = $res->getBody();
return json_decode($respond);
}
}
Мне нужен свежий взгляд, может, я что-то не так сделал:)
PS. API Auth не работает в обоих случаях, PHP и POSTMAN, я предполагаю, что я что-то напутал со значением SHA1:)