详解微信开发中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 相关文章推荐
JavaScript 新手24条实用建议[TUTS+]
Jun 21 Javascript
JS特殊函数(Function()构造函数、函数直接量)区别介绍
May 19 Javascript
RequireJS入门一之实现第一个例子
Sep 30 Javascript
jQuery之动画效果大全
Nov 09 Javascript
利用vue + koa2 + mockjs模拟数据的方法教程
Nov 22 Javascript
boostrap模态框二次弹出清空原有内容的方法
Aug 10 Javascript
从源码里了解vue中的nextTick的使用
Nov 22 Javascript
Node.js Buffer模块功能及常用方法实例分析
Jan 05 Javascript
npm 语义版本控制详解
Sep 10 Javascript
viewer.js一个强大的基于jQuery的图像查看插件(支持旋转、缩放)
Apr 01 jQuery
浅谈在vue-cli3项目中解决动态引入图片img404的问题
Aug 04 Javascript
关于IDEA中的.VUE文件报错 Export declarations are not supported by current JavaScript version
Oct 17 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
PHP 5.0对象模型深度探索之属性和方法
2008/03/27 PHP
PHP中$_SERVER的详细参数与说明介绍
2013/10/26 PHP
PHP正则替换函数preg_replace和preg_replace_callback使用总结
2014/09/22 PHP
几个优化WordPress中JavaScript加载体验的插件介绍
2015/12/17 PHP
PHP内置函数生成随机数实例
2019/01/18 PHP
PHP封装的分页类与简单用法示例
2019/02/25 PHP
PhpSpreadsheet设置单元格常用操作汇总
2020/11/13 PHP
javascript中的关于类型转换的性能优化
2010/12/14 Javascript
JSDoc 介绍使用规范JsDoc的使用介绍
2011/02/12 Javascript
jQuery 1.8 Release版本发布了
2012/08/14 Javascript
Javascript图像处理—亮度对比度应用案例
2013/01/03 Javascript
Javascript window对象详解
2014/11/12 Javascript
jQuery实现简单的日期输入格式化控件
2015/03/12 Javascript
JavaScript实现数组在指定位置插入若干元素的方法
2015/04/06 Javascript
jQuery延迟执行的实现方法
2016/12/21 Javascript
Node.js中.pfx后缀文件的处理方法
2017/03/10 Javascript
如何在vue里添加好看的lottie动画
2018/08/02 Javascript
iconfont的三种使用方式详解
2018/08/05 Javascript
Vue.js 十五分钟入门图文教程
2018/09/12 Javascript
ES6基础之 Promise 对象用法实例详解
2019/08/22 Javascript
Element的el-tree控件后台数据结构的生成以及方法的抽取
2020/03/05 Javascript
vue props default Array或是Object的正确写法说明
2020/07/30 Javascript
vue keep-alive实现多组件嵌套中个别组件存活不销毁的操作
2020/10/30 Javascript
Python Socket编程详细介绍
2017/03/23 Python
深入探究Django中的Session与Cookie
2017/07/30 Python
使用Python如何测试InnoDB与MyISAM的读写性能
2018/09/18 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
2019/06/05 Python
Python替换月份为英文缩写的实现方法
2019/07/15 Python
linux面试相关问题
2013/04/28 面试题
平面设计专业大学生职业规划书
2014/03/12 职场文书
三提三创主题教育活动查摆整改措施
2014/10/25 职场文书
仓管员岗位职责范本
2015/04/01 职场文书
新人入职感言
2015/07/31 职场文书
导游词之无锡古运河
2019/11/14 职场文书
Nginx域名转发https访问的实现
2021/03/31 Servers
浅谈mysql执行过程以及顺序
2021/05/12 MySQL