overtrue/socialite

第三方平台获取公众号授权BUG

Endy-c opened this issue · 2 comments

src/Providers/Wechat.php:255

$this->scopes = ['snsapi_base'];

导致设置'snsapi_userinfo'无效,获取不到用户除openid以外的信息,查看源码
src/Providers/Wechat.php:138userFromCode时必然返回'snsapi_base'的信息

// 此条件必为true,因为255行初始化时设置成了snsapi_base 
if (in_array('snsapi_base', $this->scopes)) {
              return $this->mapUserToObject(\json_decode($this->getTokenFromCode($code)->getBody()->getContents(), true) ?? []);
}

注释掉255行,问题解决,但不知道作者这一行的用意为何?

历史悠久了,我也不清楚当初为啥这么写,我先按你的修改掉哈。