报错信息如下:
{“errcode”:48001,“errmsg”:“api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]”}
有两种可能:
一、没有获取用户信息的权限,这个只需要认证微信服务号即可(具体步骤可问度娘,这个不是重点);
二、获取用户信息需要设置授权域。这里是重点,微信文档中有一下解释:
网页授权获取用户基本信息有两种 scope 域
https://open.weixin.qq.com/connect/oauth2/authorize?appid=xxx&redirect_uri=xxx&response_type=code&scope=xxx&state=123#wechat_redirect
1.snsapi_base 不需要用户点同意,直接跳转到授权后的页面,只能用于获取openid,不能获取用户基本信息。
2.snsapi_userinfo 会征求用户同意,授权后,可以获取用户基本信息。
只需要将scope设置为snsapi_userinfo即可,即:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=xxx&redirect_uri=xxx&response_type=code&scope=snsapi_userinfo&state=123#wechat_redirect
搞定!!!