博客 分类专栏 专题 成员
微信授权常用的登录方式
2024-11-12 10:36:13
分类专栏: Java

关于微信的几个平台

我们经常使用微信扫码登录,但是呈现形式各不相同,要搞清楚这些,首先要搞清楚微信系列的几个平台

微信公众号平台

https://mp.weixin.qq.com/ 这个就是我们常说的公众号,这里又分为个人公众号和企业公众号,个人公众号是没法进行业务开发的,只有企业公众号才可以进行业务开发,企业公众号只有企业主体可以开通,而且需要每年300的认证费。微信公众号相关的开发其实就是开发的h5应用,在微信环境下运行。

微信开放平台

https://open.weixin.qq.com/ 这个是微信开发平台 也是企业用户开通,认证费300,这个貌似是认证一次即可。我们要获取unionid 就需要这个平台,pc扫码登录最好的体验也是这个平台来提供。

关于unionid

我们常说的有openid,unionid听说的少,那么着两个的区别是啥呢?openid单个应用是唯一的,unionid是单个主体唯一,啥意思呢?比如 老罗注册了一家公司叫 字节361网络,我以这个主体去申请了三个公众号,还开发了一款app,在开放平台我将这三个应用绑定到一个主体下,那么对于一个用户 张三,他使用了我的这四款应用,会对应有四个openid,因为每个应用一个openid,但是他们的unionid是一样的,如果要让用户在各个应用中是互通的就需要采用unionid,如果使用openid就会认为是四个用户,就没法互通。这样理解了吧!

微信支付

https://pay.weixin.qq.com/ 这个是微信支付平台,这个平台也是企业用户采可以开通,开通后,需要绑定应用才可以支付,比如app应用,微信公众号应用,小程序应用等。app应用就需要在上面的开放平台去申请,公众号,小程序,就在公众号平台申请。

授权登录

三个平台说完了,接下来说登录,登录有pc扫码登录,公众号,小程序里面授权登录。

pc扫码登录

通过开放平台的授权登录

pc扫码登录,体验最好的就是开放平台的扫码登录,网站出现二维码,然后用户手机扫码,确认授权信息,确认后,网页端就直接登录了。这种可以获取到openid,unionid 用户昵称,头像等,页面无需轮训,扫码后微信会有回调,页面自动跳转,体验最好。

通过关注公众号登录

这一种是借助公众号来做登录,就是pc出现一个二维码,扫码后,会让你关注公众号,关注后,pc就登录成功了。
这种没有用户授权的操作,这种也无法获取到用户的信息,只能获取到用户的openid,如果关联了开放平台就可以获取到unionid。这种需要轮训,因为微信提供了一个关注后的回调接口,用户关注后会通过后台给我们的服务端发一个通知,但是此时我们的pc页面没法知道用户啥时候扫码了,是否关注了,那怎么办,只能轮训,或者长链接,等服务端收到了关注消息后,页面再跳转。

公众号内,小程序授权登录

这种就跟pc端没关系了,直接是在手机上微信内操作,这种的也分情况,一种是静默授权,无需用户确认授权信息,这种只能拿到用户的openid,无法获取用户的头像,昵称信息。要想获取用户昵称和头像就要用户授权才可以拿到。而且如果一进入就直接要获取用户信息是没法获取的,也没法弹出授权窗口,所以大家应该看到有些应用 下面会有一行字,点击获取完整服务,点了,才会弹出用户授权信息,这种体验不好,如果用户不点,就没法获取了。

小程序授权

小程序貌似现在规则又变了,还不能直接一次获取用户的头像和昵称,需要用户选择头像,然后弹出授权,获取头像,昵称也是个输入框,用户点击输入框弹出授权,可以获取用户昵称,用户也可以自己输入。

以上就是小程序授权登录的集中场景。