zhitoo / jwt
Laravel jwt 包
v1.0.1
2024-05-13 06:22 UTC
Requires
- php: ^7.2|^7.4|^8.0
- ext-json: *
- illuminate/auth: ^6.9|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/console: ^6.9|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/database: ^6.9|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/http: ^6.9|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/log: ^6.9|^7.0|^8.0|^9.0|^10.0|^11.0
- illuminate/support: ^6.9|^7.0|^8.0|^9.0|^10.0|^11.0
- nesbot/carbon: ^2.53.1
This package is auto-updated.
Last update: 2024-09-13 07:11:30 UTC
README
此包为基于JWT的授权API添加了一个新的驱动器
如何使用它?
composer require zhitoo/jwt
安装此包后
php artisan vendor:publish Zhitoo\Jwt\JWTServiceProvider
php artisan jwt:secret
转到 User 模型
use Zhitoo\Jwt\HasApiTokens;
.
.
.
use HasApiTokens
将 auth:jwt 添加到你的路由中间件,如下所示
Route::middleware('auth:jwt')->get('/user', function (Request $request) {
return $request->user();
});
登录使用 createToken 方法为当前登录用户创建新的 jwt 令牌
Route::post('/login', function (Request $request) {
$email = $request->input('email');
$password = $request->input('password');
if (\Illuminate\Support\Facades\Auth::attempt(['email' => $email, 'password' => $password])) {
return response()->json(['ok' => true, 'token' => $request->user()->createToken()]);
}
abort(401);
});
注销使用 revokeAccessToken 方法
Route::middleware('auth:jwt')->post('/logout', function () {
if (method_exists(auth()->user(), 'revokeAccessToken')) {
auth()->user()->revokeAccessToken();
}
return response()->json(['ok' => true]);
});