1 |
0b27c108
|
Jan Kohlíček
|
<?php
|
2 |
|
|
|
3 |
|
|
require_once __DIR__ . '/../vendor/autoload.php';
|
4 |
|
|
|
5 |
|
|
try {
|
6 |
|
|
(new Dotenv\Dotenv(__DIR__ . '/../'))->load();
|
7 |
|
|
} catch (Dotenv\Exception\InvalidPathException $e) {
|
8 |
|
|
//
|
9 |
|
|
}
|
10 |
|
|
|
11 |
|
|
use Illuminate\Http\Request;
|
12 |
|
|
use \Firebase\JWT\JWT;
|
13 |
|
|
|
14 |
|
|
function generateToken() {
|
15 |
|
|
$request = Request::createFromGlobals();
|
16 |
|
|
// parametry jwt
|
17 |
|
|
$key = env('JWT_SECRET', '');
|
18 |
|
|
$iss = env('JWT_ISS', 'aswi-doprava');
|
19 |
|
|
|
20 |
|
|
$duration = env('JWT_DURATION', 1800);
|
21 |
|
|
$iat = time();
|
22 |
|
|
$exp = $iat + $duration;
|
23 |
|
|
|
24 |
|
|
// generovani tokenu
|
25 |
|
|
$token = array(
|
26 |
|
|
'iss' => $iss,
|
27 |
|
|
'iat' => $iat,
|
28 |
|
|
'exp' => $exp,
|
29 |
|
|
'ipaddr' => $request->ip(),
|
30 |
|
|
'user-agent' => $request->header('User-Agent')
|
31 |
|
|
);
|
32 |
|
|
|
33 |
|
|
$jwt = JWT::encode($token, $key, 'HS256');
|
34 |
|
|
|
35 |
|
|
return $jwt;
|
36 |
|
|
}
|