hasAccess($request)) { return $next($request); } return $this->handleUnauthorizedRequest($request); } /** * @param \Illuminate\Http\Request $request * @param string $permission * @return \Illuminate\Http\Response */ private function handleUnauthorizedRequest(Request $request) { return response()->json([ 'status' => 'Unauthorized.' ], 401); } private function hasAccess(Request $request) { $token = $request->header('authorization'); $hasToken = ApiToken::query() ->where('token', $token) ->exists(); if (!empty($token) && $hasToken) { return true; } return false; } }