laravel jwt的配置与使用
时间: 2024-04-24 10:25:13 浏览: 174
laravel-jwt 是一个用于在 Laravel 应用程序中实现 JSON Web Token (JWT) 认证的扩展包。要配置和使用 laravel-jwt,可以按照以下步骤进行:
1. 安装扩展包:可以使用 Composer 在 Laravel 项目中安装 laravel-jwt。打开终端并运行以下命令:
```
composer require tymon/jwt-auth
```
2. 配置扩展包:安装完成后,需要发布配置文件和生成 JWT 密钥。运行以下命令:
```
php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"
php artisan jwt:secret
```
3. 配置环境变量:在 `.env` 文件中配置 JWT 相关的环境变量。在 `.env` 文件中添加以下配置项:
```
JWT_SECRET=your_secret_key
JWT_TTL=60
```
`your_secret_key` 是你生成的 JWT 密钥,`JWT_TTL` 是 JWT 的过期时间(以分钟为单位)。
4. 配置用户认证:打开 `config/auth.php` 文件,将 `api` 驱动程序更改为 `jwt`:
```php
'guards' => [
'api' => [
'driver' => 'jwt',
'provider' => 'users',
],
],
```
5. 生成 JWT:你可以使用 `jwt()` 函数来生成 JWT。例如,可以在控制器中使用以下代码生成 JWT:
```php
use Illuminate\Support\Facades\Auth;
use Tymon\JWTAuth\Facades\JWTAuth;
$token = JWTAuth::fromUser(Auth::user());
```
6. 验证 JWT:你可以使用 `jwt()` 函数来验证 JWT。例如,可以在路由中使用以下代码进行 JWT 验证:
```php
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
```
这些是基本的配置和使用步骤。你可以根据具体的需求进一步定制和使用 laravel-jwt。有关更多信息,请参阅 laravel-jwt 的文档。
阅读全文