# laravel 11 安裝 jwt-auth 套件 ## Composer 安裝 jwt-auth 套件 ```bash!= composer require tymon/jwt-auth ``` ## 然後發布配置文件 ```bash!= php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider" ``` ## 生成 JWT 密鑰 ``` php artisan jwt:secret ``` 密鑰會生成在 env 内 Payload ``` { "iss": "http://localhost/api/v1/auth/login/xxxxx", "iat": 1720964417, "exp": 1720968017, "nbf": 1720964417, "jti": "p6tNmwEXqs93IYMH", "sub": "1", "prv": "95aa6a96d059eda51287bc127a4e7da3ede0c1b1" } ``` ``` iss: 签发者,通常是 token 签发的 URL 或者名称。 iat: 签发时间,Unix 时间戳格式。 exp: 到期时间,Unix 时间戳格式。表示 token 何时过期。 nbf: Not Before,Unix 时间戳格式。表示 token 在此时间之前不可用。 jti: JWT ID,唯一标识符,用于防止重复使用。 sub: 主题,一般是用户 ID。 prv: 自定义声明,通常用于添加额外的用户信息或标识。 ```