- 如何解决公众频繁提示网页授权 api unauthorized 的问题?
/** * 获取用户信息 * @throws \Exception * @return array */ public static function getUserInfo(string $code = '') { $appid = config('site.wechat_app_id'); $secret = config('site.wechat_app_secret'); $query = http_build_query([ 'appid' => $appid, 'secret' => $secret, 'code' => $code, 'grant_type' => 'authorization_code' ]); // 常量值GET_USER_ACCESS_TOKEN_URL :'https://api.weixin.qq.com/sns/oauth2/access_token?' $oauth2Url = self::GET_USER_ACCESS_TOKEN_URL . $query; $oauth2 = json_decode(\fast\Http::get($oauth2Url), true); $query = http_build_query([ 'access_token' => $oauth2['access_token'], 'openid' => $oauth2['openid'], 'lang' => 'zh_CN', ]); // 常量值GET_USERINFO_URL :'https://api.weixin.qq.com/sns/userinfo?' $get_user_info_url = self::GET_USERINFO_URL . $query; $respone = \fast\Http::get($get_user_info_url); $userinfo = json_decode($respone, true); if (empty($userinfo['openid'])) { // 在这里会记录大量日志 \think\Log::record($respone, 'wechat_auth_log'); throw new \Exception('授权失败!'); } return $userinfo; } 上图是代码,每次都是重新获取网页授权access_token ,会频繁的提示 (对了这是一个公众号投票应用,无需关注公众号投票,目前总票数371482,总投票人数193070,每人每天可以给不同参赛者投5票) [图片] [ wechat_auth_log ] {"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: JIbDMzmoRa-luCf ]"} 公众号appid: wxb67f2683fbfb45f6
2020-07-20 - 点击预览按钮,手机扫码,一直在加载页面。
- 当前 Bug 的表现(可附上截图) 手机扫码无法进入小程序,也不提示错误。真机调试时,无论用谁的微信号扫码,都是同一个微信用户的信息 - 预期表现 - 复现路径 - 提供一个最简复现 Demo [图片] [图片]
2019-05-20