Laravel 9中基于Authorization Token创建获取用户数据的Get API
控制器代码实现
首先确保你的路由已添加Passport的auth:api中间件(Token验证依赖该中间件),修改路由如下:
Route::get('/get_user', [userDEtails::class, 'get_user'])->middleware('auth:api');
然后补充userDEtails控制器内的get_user方法:
<?php namespace App\Http\Controllers; use App\Models\User; use Illuminate\Http\Request; class userDEtails extends Controller { public function get_user(Request $request) { // Passport的auth:api中间件会自动验证请求头中的Token有效性,无效则直接返回401 // 可选:获取当前通过验证的用户信息 $currentAuthenticatedUser = $request->user(); // 查询数据库中所有用户数据 $allUsers = User::all(); // 返回JSON格式的响应 return response()->json([ 'success' => true, 'message' => '用户数据获取成功', 'authenticated_user' => $currentAuthenticatedUser, // 可选返回,不需要可删除 'users' => $allUsers ], 200); } }
关键注意事项
- Postman请求时,需在请求头中添加:
- 键:
Authorization - 值:
Bearer 你的Token字符串(注意Bearer和Token之间有空格)
- 键:
- 若不需要返回当前验证用户的信息,可删除响应中的
authenticated_user字段 - 如需分页返回用户数据,可将
User::all()替换为User::paginate(10)(数字为每页条数)
内容的提问来源于stack exchange,提问作者vivek kn
相关产品推荐
相关产品推荐

