controller); $properties = $controller->getDefaultProperties(); $noNeedLogin = $properties['noNeedLogin'] ?? []; $noNeedAuth = $properties['noNeedAuth'] ?? []; if (in_array($request->action, $noNeedLogin)) { // 白名单 return $handler($request); } else { try { $authHeader = $request->header('Fdesk-Auth-Token'); $user = User::where('union_id',$authHeader)->first(); $user['uid'] = $user['id']; if (!$user) { $body = [ 'status' => 'fail', 'code' => 401, 'message' => '未授权', 'data' => [], ]; return response(json_encode($body, JSON_UNESCAPED_UNICODE), 401, ['Content-Type' => 'application/json']); } $request->user = $user->toArray(); return $handler($request); } catch (\Throwable $e) { $body = [ 'status' => 'fail', 'code' => 401, 'message' => $e->getMessage(), 'data' => [], ]; return response(json_encode($body, JSON_UNESCAPED_UNICODE), 401, ['Content-Type' => 'application/json']); } } return $handler($request); } }