微信开发中的snsapi_base与snsapi_userinfo及静默授权的实现
来源:互联网 发布:一天一包烟 烟瘾 知乎 编辑:程序博客网 时间:2024/05/30 02:52
snsapi_base与snsapi_userinfo属于微信网页授权获取用户信息的两种作用域
snsapi_base只能获取access_token和openID
snsapi_userinfo可以获取更详细的用户资料,比如头像、昵称、性别等
首先,这里的access_token与基础access_token(比如自定义菜单用到的)是不一样的。两者区别如下:
网页授权的access_token在每次获取openID时一起更新,在接口调用频次限制中为“无上限”
基础access_token一般限制为2000次/日,需要自己保存起来并定时更新
其次,当作用域为snsapi_userinfo时,根据官方文档中的说明,需要用户进行点击授权,但是我发现,有一个办法可以静默获得而不需要点击授权。方法如下:
1、通过snsapi_base,同时获得access_token和openid
2、把这里的access_token和openid用于https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN 接口中
3、请求成功之后,就静默获取到用户详细资料了。
以上方法的前提是同一个公众号内,用户关注了。如果是借用其他的公众号的,是需要用户点击授权的。
1、第一步,获取code,https://open.weixin.qq.com/connect/oauth2/authorize?appid='.APPID.'&redirect_uri='.urldecode(URL).'login.php&response_type=code&scope=snsapi_base&state=start#wechat_redirect
2、第二步,获取openID,https://api.weixin.qq.com/sns/oauth2/access_token?appid='.APPID.'&secret='.APPSECRET.'&code='.CODE.'&grant_type=authorization_code
3、第三步,结合openID和access_token获取用户详细信息,https://api.weixin.qq.com/cgi-bin/user/info?access_token='.$access_token.'&openid='.$openId.'&lang=zh_CN
- 微信开发中的snsapi_base与snsapi_userinfo及静默授权的实现
- 微信网页授权snsapi_base,snsapi_userinfo区别和实现
- 微信OAuth2.0网页授权snsapi_userinfo方式java版
- 微信网页授权获取用户基本信息(snsapi_userinfo)
- 微信网页授权获取用户基本信息(snsapi_base)
- 微信 snsapi_userinfo 失败
- 微信静默授权登录
- 微信授权登录以及静默授权
- 微信 静默 授权登录 获取openid 实现方法
- 微信 静默 授权登录 获取openid 实现方法
- 微信第三方登录与静默授权
- 微信开发:已经授权的用户二次登陆静默验证openid
- 微信公众平台开发获取openid-snsapi_base方式
- yershop商城系统Thinkphp开发(四)——微信篇1:微信公众号静默授权注册及获取用户信息
- 微信第三方登录(静默授权和非静默授权)
- 微信第三方登录(静默授权和非静默授权)实例步骤
- [微信开发] 微信网页授权Java实现
- 微信静默授权,利用花生壳在本地测试
- 搭建网络挂载文件系统
- 大数据学习笔记之四十九 推荐算法的主要算法第二部分
- 二分一个数组,使二者之差尽可能小
- zoj 1205
- httpd + subversion SVN服务器搭建
- 微信开发中的snsapi_base与snsapi_userinfo及静默授权的实现
- linux字符设备驱动-同步互斥阻塞笔记
- mysql分表和表分区详解
- PAT-A1117
- 【转载】libevent核心数据结构
- 【Mybatis】深入浅出Mybatis(六)——mapper代理方法使用
- ElasticSearch嵌套模型基本操作
- PAT-A1110
- 函数参数按引用传递和按值传递对动态联编的影响