diff --git a/app/middleware/OauthThirdCheck.php b/app/middleware/OauthThirdCheck.php new file mode 100644 index 0000000..72e081d --- /dev/null +++ b/app/middleware/OauthThirdCheck.php @@ -0,0 +1,46 @@ +all(); // 获取请求数据 +// $customerId = isset($requestData['ad_customer_id']) ? $requestData['ad_customer_id'] : getenv('GOOGLE_ADS_CUSTOMER_ID'); + $uid = $request->jwtClaims['uid']; + // 查询指定 user_id 的 ThirdUser + $thirdUserGoogle = ThirdUser::where('user_id', $uid)->where('third_type', 'google')->find(); + if ($thirdUserGoogle && $thirdUserGoogle->access_token) { + // 获取 access_token + $request->refresh_token_google = $thirdUserGoogle->access_token; + // 获取关联的广告主数据 + $advertiserGoogle = $thirdUserGoogle->advertisers()->find(); // 获取第一个广告主记录 + + if ($advertiserGoogle) { + // 获取 google_login_customer_id + $request->login_customer_id = $advertiserGoogle->google_login_customer_id; +// dump( $request->access_token,$request->login_customer_id); + } + } + $thirdUserFacebook = ThirdUser::where('user_id', $uid)->where('third_type', 'facebook')->find(); + if ($thirdUserFacebook && $thirdUserFacebook->access_token) { + // 获取 access_token + $request->refresh_token_facebook = $thirdUserFacebook->access_token; + } + $thirdUserTiktok = ThirdUser::where('user_id', $uid)->where('third_type', 'tiktok')->find(); + if($thirdUserTiktok && $thirdUserTiktok->access_token){ + $request->refresh_token_tiktok = $thirdUserTiktok->access_token; + } + // 不需要登录,请求继续向洋葱芯穿越 + return $handler($request); + } +} \ No newline at end of file