/** * 获取微信公众号用户信息 * * @param Request $request POST请求 * * @return JSON 用户信息 */ public function getUser(Request $request) { if ($request->isMethod('post')) { $appId = $request->appId; $openId = $request->openId; $app = WechatApp::getAppById($appId); if (isset($app)) { $userService = new User($app['app_id'], $app['app_secret']); try { $user = $userService->get($openId); return json_encode($user); } catch (\Exception $e) { echo '获取用户信息失败:' . $e->getMessage(); } } } }
/** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { $appId = 'wx22be62c5077abcfe'; $secret = 'f364efc269da0f33e7f376e0ca4c9cc0'; $auth = new Auth($appId, $secret); $wxUser = Session::has("wxUser"); if (!$wxUser) { $user = $auth->authorize(null, 'snsapi_base'); $userService = new User($appId, $secret); $userInfo = $userService->get($user->openid); $wxUser = WxUser::getByOpenId($user->openid); if (!$wxUser) { $wxUser = WxUser::saveWxUser($userInfo); } else { $wxUser->updateWxUser($userInfo); } Session::put('wxUser', $wxUser); } return $next($request); }
/** * Execute the console command. * * @return mixed */ public function handle() { $accountId = $this->argument('account_id'); $openId = $this->argument('openid'); /* * 1 获取Account */ $account = $this->getAccount($accountId); $fanModel = new FanModel(); $FanService = new FanService(); /* * 2 初始化 SDK Config, 构建 SDK 对象 */ $userService = new User($account->app_id, $account->app_secret); $fan = $userService->get($openId); if (isset($fan['subscribe']) && $fan['subscribe']) { //subscribe=1 关注了公众号 $updateInput = $FanService->formatFromWeChat($fan); /* * 存入本地 */ $fanModel->where('account_id', $accountId)->where('openid', $openId)->update($updateInput); } }
public function getUserInfo(User $user) { $userInfo = $user->get('oKHdSuBX5hdI7nkfEfG45-csdCDU'); dd($userInfo); }