1
|
<?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
|
}
|