专业小程序设计开发——助力新电商新零售
电话+V: 152079-09430 ,欢迎咨询公众号菜单非静默授权什么意思啊呢,[小程序设计与开发],[小程序投流与推广],[小程序后台搭建],[小程序整套源码打包],[为个体及小微企业助力],[电商新零售模式],[小程序运营推广及维护]
一、什么是微信授权码
微信授权码是指在微信登录第三方的时候需要授权。一般只有需要对接到别的平台时,才需要授权登录。
随着微信连接一切的能力在越来来殷实,越来越多的平台支持用户使用微信进行授权第三方登录,在顺应这个联合登录的趋势的同时,也有越来越多的平台选择用微信的联合授权登录作为仅次于QQ、微博等第三方授权登录的第三个选择,甚至有超越前两者之势。
微信授权登录有两种:
1、点击授权登录:
需要登录时,页面跳转到授权页面,也就是我们经常看到的绿色授权页面,用户授权后可从微信拿到openid、unionid。
2、静默授权:
静默授权下,不需要跳转页面让用户确认授权,而是直接授权用户登录;但是需要注意的是,静默授权只能拿到用户的openid和unionid,无法拿到用户的微信头像、微信名称等个人信息。
使用微信授权登录有的优势:
1、用户量足够大,基本所有用户都会有微信,登录起来比较方便快捷。
2、微信作为一个开放平台,为众多公众号/服务开放了许多服务接口,让公众号能够为自己的用户提供更加个性、更加优质的产品服务。
二、H5页面静默授权获取微信openid
前几天和业务谈需求的时候提到了要在微信公众号里面做一个申请页面A。当时我对微信的了解还不是很多,只知道公众号上原来已经做了一个其他功能的页面B,B页面可以获取到客户微信的openid。
当时我们业务同事说只有B页面可以拿到openid,其他的页面都拿不到,所以这个正在谈的A页面入口要做在已有页面B上,然后通过B获取openid之后再传给A。我当时因为不懂也只能听他说,毕竟那个同事说的好像很确定的样子。
事后我仔细想了想,页面B也就是个普通的html呀,凭什么就B页面能获取客户的openid呢?肯定有方法的!于是我就上网搜了一下,最后成功获取了自己的openid,下面介绍下方法吧。
首先,你要有个微信公众号,并且要获得这个接口的权限
点修改之后,在功能设置的“网页授权域名”处添加可以获取微信openid的域名,也就是你自己公众号里面需要获取openid网页的域名。
做完上面这些之后,其实已经可以实现我们想要的效果了,这里因为我不是要做一个完整的功能,我只是想试验下html的页面怎么获取openid,所以过程比较简陋。
这里是微信官方的网页授权方法:
其实看起来微信的说明有那么一大段,但核心的内容也就那么一点点,总结下来就是:先拿到code,再用code去换取网页授权access_token。
因为重定向的url要urlEncode,所以这里我用另一个网站把我要访问的url转换了一下,网址如下:
在微信浏览器里面输入下面的url,appid、redirect_uri改成自己的,其他的都可以不用改。
静默授权:scope=snsapi_base
非静默授权:scope=snsapi_userinfo
一般在微信中是看不到url也没办法输入url的,所以这里我是用微信开发者工具调试的。
输入完静默授权的url后,url自动跳转成有code的,这个code只有5分钟有效期。

同样的,获取openid也就是在微信浏览器中执行一下下面这个url就可以了。appid,secret换成自己的,code用上面一步获取的,其他的都不用改。
运行完后的结果就显示在左边这个图里啦,你看,openid不就拿到了吗。
微信公众号的scope权限什么意思
2019-10-1803:55·科技i关注如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑。
关于网页授权回调域名的说明
1、在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的“开发-接口权限-网页服务-网页帐号-网页授权获取用户基本信息”的配置选项中,修改授权回调域名。请注意,这里填写的是域名(是一个字符串),而不是URL,因此请勿加http://等协议头;
2、授权回调域名配置规范为全域名,比如需要网页授权的域名为:www.qq.com,配置以后此域名下面的页面
http://www.qq.com/music.html、
http://www.qq.com/login.html都可以进行OAuth2.0鉴权。但http://pay.qq.com、http://music.qq.com、http://qq.com无法进行OAuth2.0鉴权
3、如果公众号登录授权给了第三方开发者来进行管理,则不必做任何设置,由第三方代替公众号实现网页授权即可
关于网页授权的两种scope的区别说明
1、以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,并且是静默授权并自动跳转到回调页的。用户感知的就是直接进入了回调页(往往是业务页面)
2、以snsapi_userinfo为scope发起的网页授权,是用来获取用户的基本信息的。但这种授权需要用户手动同意,并且由于用户同意过,所以无须关注,就可在授权后获取该用户的基本信息。
3、用户管理类接口中的“获取用户基本信息接口”,是在用户和公众号产生消息交互或关注后事件推送后,才能根据用户OpenID来获取用户基本信息。这个接口,包括其他微信接口,都是需要该用户(即openid)关注了公众号后,才能调用成功的。
关于特殊场景下的静默授权
1、上面已经提到,对于以snsapi_base为scope的网页授权,就静默授权的,用户无感知;
2、对于已关注公众号的用户,如果用户从公众号的会话或者自定义菜单进入本公众号的网页授权页,即使是scope为snsapi_userinfo,也是静默授权,用户无感知。
以上就是scope权限什么意思啊的详细内容,更多请关注其它相关文章!
更多技巧请《转发+关注》哦!
【GSFAI BANK FINANCING】尊享直接对接老板
电话+V: 152079-09430
专注于小程序推广配套流程服务方案。为企业及个人客户提供了高性价比的运营方案,解决小微企业和个体拓展客户的问题<