今天在做微信公众号网页授权功能,我测试snsapi_base与snsapi_userinfo
文档上说snsapi_base只能得到opeinid,
而snsapi_userinfo可以得到昵称,地址等详细信息,
这个的前提是不是需要用户的微信关注你的公众号呀。要不我发现snsapi_userinfo与只能得到openid与unionid。
今天在做微信公众号网页授权功能,我测试snsapi_base与snsapi_userinfo
文档上说snsapi_base只能得到opeinid,
而snsapi_userinfo可以得到昵称,地址等详细信息,
这个的前提是不是需要用户的微信关注你的公众号呀。要不我发现snsapi_userinfo与只能得到openid与unionid。
snsapi_userinfo 可以得到任何通过微信自带浏览器进入你网页的微信用户的openid、unionid 昵称 头像 性别和地区信息,不需要关注你微信号的
你只获取到openid和unionid的原因应该是你值进行了一半(猜测,如果不是另外把代码贴出来讨论吧),与静默授权不同,拉去用户资料也就是用snsapi_userinfo 需要三或四步,其实这部分文档很清楚的:
1、引导用户进入授权页面同意授权,获取code
2、通过code换取网页授权access_token(与基础支持中的access_token不同)
3、如果需要,开发者可以刷新网页授权access_token,避免过期
4、通过网页授权access_token和openid获取用户基本信息(支持UnionID机制)
第一步是跳转后微信给你加一个code参数,你可以用这个参数来换取access_token和openid(第2步),然后你再拿这openid和access_tonken去拉去详细资料(上面的第4步),接口地址:
是,否则会提示错误,一般用于从公众号菜单进入链接的情况下。
snsapi_userinfo一般用于通用情况的授权登录,因为不确定入口是哪个。