// Fetch the associated token Model
$token = \Laravel\Sanctum\PersonalAccessToken::findToken($yourToken);
// Get the assigned user
$user = $token->tokenable;
$post_data = $request->all();
if (isset($post_data['user_token'])) {
[$id, $user_token] = explode('|', $post_data['user_token'], 2);
$token_data = DB::table('personal_access_tokens')->where('token', hash('sha256', $user_token))->first();
$user_id = $token_data->tokenable_id; // !!!THIS ID WE CAN USE TO GET DATA OF YOUR USER!!!
}
4条答案
按热度按时间gmxoilav1#
如果你想验证一个token是否有效并获取相应的用户,Sanctum库中有一个内置的方法可以让你做到这一点:
vh0rcniy2#
我通过做一些实验和阅读Sanctum的源代码找到了一个解决方案。用户的数据可以通过POST数据中的令牌以这种方式获得:
watbbzwu3#
我做了以下工作:
我的登录控制器
所以你有清楚的洞察力,我下一步在我的ApiResponser是只为漂亮的状态消息。
我收到以下JSON
我有一个nuxtJS项目,在我的登录组件中,我有以下内容
最后在我的VueX用户商店里
zte4gxcn4#