Bernd Wurst
autoload mit festem Pfad
Bernd Wurst commited 6fbcee6 at 2024-09-11 07:15:04
<?php
require_once(__DIR__.'/../vendor/autoload.php');
use GuzzleHttp\Client;
use GuzzleHttp\Psr7\Request;
require_once("config.php");
$base_url = $config['api_url'];
$TOKEN_FILE = '../jwt-token.json';
$jwt = [
"token" => null,
"refresh_token" => null,
"exp" => time()
];
if (file_exists($TOKEN_FILE)) {
$jwt = json_decode(file_get_contents($TOKEN_FILE), true);
}
if ($jwt['refresh_token'] && $jwt['exp'] < time()+5) {
// refresh token
$url = $base_url . 'token/refresh';
$data = ["refresh_token" => $jwt['refresh_token']];
$options = array(
'http' => array(
'method' => 'POST',
'content' => json_encode( $data ),
'header'=> "Content-Type: application/json\r\n" .
"Accept: application/json\r\n"
)
);
$context = stream_context_create( $options );
$result = @file_get_contents( $url, false, $context );
if (!$result) {
print('Es gibt gerade ein technisches Problem.');
die();
}
$response = json_decode( $result, true);
$jwt['token'] = $response["token"];
$jwt['refresh_token'] = $response["refresh_token"];
$fields = explode('.', $jwt['token']);
$data = json_decode(base64_decode($fields[1]), true);
$jwt['exp'] = $data['exp'];
}
if (!$jwt['token'] || $jwt['exp'] < time()+5) {
// get new token
# init API
$url = $base_url . 'login';
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX