ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
**目录 (Table of Contents)** [TOC] ## OAuth2.0 微信端静默登录 ```PHP $wxConfigure = new WechatConfig(); $wxConfigure->setParameter("appid",YOURAPPID); $wxConfigure->setParameter("appsecret",YOURSECRET); $wxConfigure->setParameter("callback",CALLBACK); // 假设您已经获取了ACCESS_TOKEN // 如果没有获取,可以查看5.2章节 该凭证通过 WechatServerApi -> getAccessToken 获取 // 并存放在数据库中,维护token的有效期 $wxConfigure->setParameter("access_token",ACCESS_TOKEN); $OAuthApi = new OAuthApi($wxConfigure); // 如果首次没有拿到Code,先获取Code // SPA应用直接在前端获取调转地址,使用location.href完成跳转 if(!isset($_GET['code']) && empty($_GET['code'])) { // PAGE_URL 是当前处理函数的路由 $redirectUri = $OAuthApi->createOauthUrlForCode(PAGE_URL); header("location:{$redirectUri}"); exit; } // 获取 openid $openid = $OAuthApi->getOpenId($_GET['code']); // 这里必须使用通用API凭证access_token,不能使用授权凭证access_token $wechatUserInfo = $OAuthApi->getWechatUserInfo(ACCESS_TOKEN,$openid['openid']); // $wechatUserInfo 就是微信服务器返回来的微信用户数据对象 // 可以通过$wechatUserInfo->toArray() 转换为数组 // 该对象是 WechatUser对象,可以参考 4.8.1 章节 // 操作本地数据库,完成登录后续工作,如存储session,未注册提示注册等 ```