利用Laravel Sanctum针对SPA和简单API的轻量级身份验证系统。
·
安装 Laravel Sanctum
首先使用 Composer 安装该软件包
composer require laravel/sanctum
接下来运行以下命令发布迁移文件(并运行迁移):
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
Sanctum 安装的最后一部分要求我们修改 app\Http\Kernel.php 文件以包含一个中间件,该中间件会将 Laravel 的会话 cookie 注入到我们的应用程序前端中。这最终将使我们能够以经过身份验证的用户身份传递和检索数据:
'api' => [
EnsureFrontendRequestsAreStateful::class,
'throttle:60,1'
]
然后创建表 personal_access_tokens 用于记录登录信息

创建路由访问登录方法
public function admin_login(Request $request)
{
try {
$data = $request->all();
$admin = Admin::where(['name' => $data['name']])->first();
if (!$admin || !Hash::check($data['password'], $admin['password'])) {
return hello_error('账户或密码错误!');
}
$token = $admin->createToken('admin', ['admin:all'])->plainTextToken;
session('token', $token);
dd($token);
} catch (\Exception $exception) {
return hello_error('失败!', $exception->getMessage());
}
}

获取登录者信息
public function get_user(Request $request)
{
//$user = auth::user();
//或
$user = $request->user();
dd($user);
}
通过请求头携带 认证参数获取登录者信息

出自
添加链接描述
更多推荐
所有评论(0)