Add the authenticated API fetcher and sender.
continuous-integration/drone/push Build is passing Details

main
KKlochko 2 years ago
parent e178d1c8b4
commit 8dcb580393

@ -0,0 +1,42 @@
<?php
namespace App\DotsAPI\Fetcher\v2;
use GuzzleHttp\Client;
class AuthApiFetcher
{
public function get($endpoint, $field = 'items') {
$client = new Client();
$baseUrl = config('dotsapi.base_url');
$apiToken = config('dotsapi.api_token');
$apiAccountToken = config('dotsapi.api_account_token');
$apiAuthToken = config('dotsapi.api_auth_token');
$apiUrl = $baseUrl . $endpoint;
$response = $client->get(
$apiUrl,
[
'headers' => [
'Api-Auth-Token' => $apiAuthToken,
'Api-Token' => $apiToken,
'Api-Account-Token' => $apiAccountToken,
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'v'=> '2.0.0',
],
]
);
$data = json_decode($response->getBody()->getContents(), true);
if($field == '')
return $data;
return $data[$field];
}
}

@ -0,0 +1,44 @@
<?php
namespace App\DotsAPI\Fetcher\v2;
use GuzzleHttp;
use GuzzleHttp\Client;
class AuthApiSender
{
public function get($endpoint, $json, $field = 'id') {
$client = new Client();
$baseUrl = config('dotsapi.base_url');
$apiToken = config('dotsapi.api_token');
$apiAccountToken = config('dotsapi.api_account_token');
$apiAuthToken = config('dotsapi.api_auth_token');
$apiUrl = $baseUrl . $endpoint;
$response = $client->post(
$apiUrl,
[
GuzzleHttp\RequestOptions::JSON => $json,
'headers' => [
'Api-Auth-Token' => $apiAuthToken,
'Api-Token' => $apiToken,
'Api-Account-Token' => $apiAccountToken,
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'v'=> '2.0.0',
],
]
);
$data = json_decode($response->getBody()->getContents(), true);
if($field == '')
return $data;
return $data[$field];
}
}
Loading…
Cancel
Save