Projekt

Obecné

Profil

Stáhnout (878 Bajtů) Statistiky
| Větev: | Revize:
1
<?php
2
/**
3
 * Created by PhpStorm.
4
 * User: Zdenda
5
 * Date: 29.4.2018
6
 * Time: 10:20
7
 */
8

    
9
namespace App\Http\Controllers;
10

    
11
use \Firebase\JWT\JWT;
12
use Illuminate\Http\Request;
13

    
14
class TokenController extends Controller
15
{
16
    /**
17
     * Vygeneruje nový token pro JWT autorizaci.
18
     */
19
    public function generateToken(Request $request) {
20
        $duration = env('JWT_DURATION', 1800);
21

    
22
        // parametry jwt
23
        $iat = time();
24
        $exp = $iat + $duration;
25
        $iss = env('JWT_ISS', 'aswi-doprava');
26

    
27
        // generovani tokenu
28
        $key = env('JWT_SECRET', '');
29
        $token = array(
30
            'iss' => $iss,
31
            'iat' => $iat,
32
            'exp' => $exp,
33
            'ipaddr' => $request->ip(),
34
            'user-agent' => $request->header('User-Agent')
35
        );
36

    
37
        $jwt = JWT::encode($token, $key, 'HS256');
38

    
39
        return $jwt;
40
    }
41
}
(5-5/6)