get('code'); if(empty($code)){ return message('code参数错误',false); } // 授权 $this->userInfo = WechatService::auth(); $openid = isset($this->userInfo['openid'])? $this->userInfo['openid'] : ''; $status = isset($this->userInfo['status'])? $this->userInfo['status'] : ''; $userId = isset($this->userInfo['id'])? $this->userInfo['id'] : 0; if(empty($this->userInfo) || empty($openid) || $userId<=0){ return message('用户授权失败',false); } if($status == 3){ return message('用户已被拉入黑名单',false); } if($status != 1){ return message('用户账户已被冻结不可操作',false); } // 获取授权TOKEN $jwt = new Jwt('jwt_wx'); $token = $jwt->getToken($userId, 3); // 结果返回 $result = [ 'access_token' => $token, 'info'=> $this->userInfo, ]; // 用户信息 RedisService::set("auths:request:$userId", request()->all(), 600); RedisService::set("auths:info:{$userId}", $this->userInfo, 4*24*3600); return message('获取授权成功', true, $result); } /** * 获取授权跳转地址 * @return array */ public function authUrl(){ $url = request()->get('url'); return message('获取授权成功', true, WechatService::makeRedirectUrl($url)); } /** * 微信授权配置入口 */ public function check(){ return WechatService::valid(); } }