标签:获取用户基本信息 输入 导致 authorize 业务 info 知识 wechat 错误
微信公众号基础知识说明网页授权获取微信用户信息:两种 scope 域
snsapi_base:静默授权,直接跳转到授权后的页面,只能用于获取openid
snsapi_userinfo:必须用户同意授权后,可以获取用户基本信息
案例说明
公司有两个公众号分别是公众号1,公众号2,有个业务场景,需要用户在关注公众号1中,输入指定商品积分码后,会给另外一个公众号2发一个现金红包,这里就要在公众号1页面通过snsapi_base方式获取用户在公众号2的网页授权code,调用微信开放api换成openId,这时,用户很可能未关注公众号2(如果用户未关注公众号2,必须采用snsapi_userinfo方式才能获取到用户基本信息),本人就掉进这个坑,在调用获取token后,又调用了获取用户信息,从而导致报错{"errcode":48001,"errmsg":"api unauthorized}。
错误原因分析
由于调用微信第三方插件,对微信公众号基础api了解不深入,其实获取token接口的返回结果就有openId,格式如下:
{
"access_token":"112123123123",
"expires_in":7200,
"refresh_token":"12312312312",
"openid":"oYbGRs8MmU6bESxXcX2Z0rFRivjQ",
"scope":"snsapi_base"
}
{"errcode":48001,"errmsg":"api unauthorized}
标签:获取用户基本信息 输入 导致 authorize 业务 info 知识 wechat 错误
原文地址:http://blog.51cto.com/13971805/2335320