header('x-package', ''); $provider = $request->header('x-provider', ''); $regId = $request->header('x-regid', ''); $pushId = $request->header('x-pushid', 0); $sendOrderId = $request->header('send-order-id', 0); // 判断是否登录 if (!$token = $this->auth->setRequest($request)->getToken()) { return response()->error('QAPP_NOT_LOGIN'); } $package = get_real_package($package); try { $user = $this->auth->authenticate($token); if (empty($user->id)) { return response()->error('QAPP_NOT_LOGIN'); } if ($sendOrderId) { try { $result = SendOrderService::recordUserSendOrder($user->id, $sendOrderId); if($result){ UserService::setUserSendOrder($user->id, $sendOrderId); } } catch (\Exception $e) { myLog('QuickAppGetUserFromToken-sendOrderId')->info('QuickAppGetUserFromToken-uid:'.$user->id.',send_order_id:'.$sendOrderId); myLog('QuickAppGetUserFromToken-sendOrderId')->error($e); } } // 设置全局信息 (new QappUserService)->setGolableUser($user->id, $package); } catch (TokenExpiredException $e) { return response()->error('QAPP_TOKEN_ERROR'); } catch (JWTException $e) { return response()->error('QAPP_TOKEN_ERROR'); } catch (Exception $e) { myLog('QuickAppGetUserFromToken')->info($e->getMessage()); return response()->error('QAPP_NOT_LOGIN'); } // 更新用户reg_id $uid = $user->id; PushService::setUserRegId($uid, $regId, $provider, $package); // 推送pv、uv统计 if ($pushId) { PushCache::incrPushPv($pushId, date('Ymd')); PushCache::zAddPushUv($pushId, date('Ymd'), $uid); } // 头条次留回传 ReportService::reportActive($uid); return $next($request); } }