详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现


Posted in Javascript onMarch 11, 2017

详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现

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/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN 接口中

3、请求成功之后,就静默获取到用户详细资料了。

以上方法的前提是同一个公众号内,用户关注了。如果是借用其他的公众号的,是需要用户点击授权的。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
js getBoundingClientRect() 来获取页面元素的位置
Nov 25 Javascript
浅谈Javascript事件模拟
Jun 27 Javascript
验证码按回车不变解决方法
Mar 29 Javascript
js动态给table添加/删除tr的方法
Aug 02 Javascript
jQuery选择器源码解读(二):select方法
Mar 31 Javascript
jquery.serialize() 函数语法及简单实例
Jul 08 Javascript
JavaScript判断浏览器对CSS3属性是否支持的多种方法
Nov 13 Javascript
jQuery插件HighCharts绘制2D带Label的折线图效果示例【附demo源码下载】
Mar 08 Javascript
Node.js中你不可不精的Stream(流)
Jun 08 Javascript
详解javascript设计模式三:代理模式
Mar 25 Javascript
vue-cli3跨域配置的简单方法
Sep 06 Javascript
Javascript如何递归遍历本地文件夹
Aug 06 Javascript
基于Node.js的WebSocket通信实现
Mar 11 #Javascript
js原生Ajax的封装和原理详解
Mar 11 #Javascript
ThinkPHP+jquery实现“加载更多”功能代码
Mar 11 #Javascript
Bootstrap的Carousel配合dropload.js实现移动端滑动切换图片
Mar 10 #Javascript
基于Bootstrap框架实现图片切换
Mar 10 #Javascript
angularjs ui-router中路由的二级嵌套
Mar 10 #Javascript
AngularJS ui-router (嵌套路由)实例
Mar 10 #Javascript
You might like
PHP5 的对象赋值机制介绍
2011/08/02 PHP
自定义php类(查找/修改)xml文档
2013/03/26 PHP
PHP源码分析之变量的存储过程分解
2014/07/03 PHP
浅谈PHP正则中的捕获组与非捕获组
2016/07/18 PHP
详解PHP中的 input属性(隐藏 只读 限制)
2017/08/14 PHP
利用js获取服务器时间的两个简单方法
2010/01/08 Javascript
js当一个变量为函数时 应该注意的一点细节小结
2011/12/29 Javascript
js的2种继承方式详解
2014/03/04 Javascript
网页右下角弹出窗体实现代码
2014/06/05 Javascript
javascript继承机制实例详解
2014/11/20 Javascript
jquery 设置style:display的方法
2015/01/29 Javascript
详解JavaScript逻辑Not运算符
2015/12/04 Javascript
基于JS实现新闻列表无缝向上滚动实例代码
2016/01/22 Javascript
终于实现了!精彩的jquery弹幕效果
2016/07/18 Javascript
js获取指定时间的前几秒
2017/04/05 Javascript
JQuery.dataTables表格插件添加跳转到指定页
2017/06/09 jQuery
详解Vue2 SSR 缓存 Api 数据
2017/11/20 Javascript
JQuery判断radio单选框是否选中并获取值的方法
2019/01/17 jQuery
基于react项目打包css引用路径错误解决方案
2020/10/28 Javascript
python得到qq句柄,并显示在前台的方法
2018/10/14 Python
解决sublime+python3无法输出中文的问题
2018/12/12 Python
django 类视图的使用方法详解
2019/07/24 Python
修改 CentOS 6.x 上默认Python的方法
2019/09/06 Python
Python json模块与jsonpath模块区别详解
2020/03/05 Python
基于python 凸包问题的解决
2020/04/16 Python
浅析Python 抽象工厂模式的优缺点
2020/07/13 Python
精灵市场:Pixie Market
2019/06/18 全球购物
int *p=NULL和*p= NULL有什么区别
2014/10/23 面试题
3个CCIE对一个工程师的面试题
2012/05/06 面试题
初中校园之声广播稿
2014/01/15 职场文书
《恐龙》教学反思
2014/04/27 职场文书
高等学院职业生涯规划书范文
2014/09/16 职场文书
党员个人整改措施
2014/10/24 职场文书
公司酒会致辞
2015/07/30 职场文书
python 中yaml文件用法大全
2021/07/04 Python
vmware虚拟机打不开vmx文件怎么办 ?vmware虚拟机vmx文件打开方法
2022/04/08 数码科技