php - Laravel 在每个请求中验证社交名流令牌
问题描述
我正在创建基于 laravel API 的应用程序,其中我使用护照进行身份验证。我还使用 laravel socialite 进行社交媒体登录。使用 laravel 护照一切正常,但我无法验证社交媒体令牌,就像我们在每个请求的标头中传递 google 令牌,但无法在每个请求中检查令牌有效性。
有没有人可以帮助我解决这个问题?
提前致谢。
解决方案
您可以检查中间件:
中间件文件:
class ApiAuthenticate {
public function handle($request, Closure $next)
{
$status = false;
$accessToken = $request->header('AccessToken');
if($accessToken) {
$user_check = User::where("api_token", $accessToken)->first();
if(count($user_check) > 0)
{
$status = true;
}
}
if($status == false) {
return response()->json([
'code' => 401,
'msg' => trans('web_service.unathenticated')
]);
} else {
return $next($request);
}
}
}
路线文件:
Route::group(array('prefix' => 'api', 'middleware' => 'api'), function()
{
Route::get('/users', 'Api\UsersController@getUser');
Route::post('/users/save', 'Api\UsersController@saveUser');
})
推荐阅读
- reactjs - React - Antd - Grid Col Lazyload 溢出
- asp.net-core-mvc - 日期选择器在编辑表单中的日期不可见
- javascript - 赛普拉斯:不可见阵列的长度
- angular - Agular PrimeNG UI 库:如何实现使用 primeng/api 的组件
- angular - 更新到 webpack 5,一直无法调试任何 ts 或 js 文件
- c++ - 一般如何在winapi中初始化INPUT?
- splunk - 如何在 Splunk 中将被 rex 命令替换的文本计数为一个
- querydsl - 如何在querydsl中将子查询作为numberExpression返回
- javascript - 如何优化检查分层对象中的参数的过程?
- windows - 无法使用 IWR 在 powershell 中安装应用程序,Web 撤销错误