微信小程序-新用户获取微信手机号登录服务端获取不到unionid情况

微信小程序-新用户获取微信手机号登录服务端获取不到unionid情况,第1张

微信小程序button api
>

具体 *** 作步骤如下:

1、首先打开百度浏览器,点击选择进入“微信公众平台”按钮。

2、然后在新的界面里点击选择“小程序”按钮。

3、之后在新的界面里点击选择“查看详情”按钮。

4、然后在新的界面里输入账号和密码后点击选择“登录”按钮即可。

首先搭建小程序不一定需要自备域名和服务器
如果是使用微信门店小程序、微信小店小程序,以及静态的小程序(只有前端),那么是不需要购买域名和服务器。
再者是使用像
速成应用
小程序开发平台这样的第三方平台。其实这些平台也是需要用到域名和服务器,只不过这两个都由第三方平台提供了,所以也就不需要我们自己购买。
除此之外,自己开发需要有数据交互的小程序都需要有域名和服务器,同时域名还要有>

最近开发微信小程序,做登录功能时遇到下图。

看太懂,有几处疑惑地方:

下面就是寻找答案的过程。

豪车模型

邻居模型

在上面两个模型中。豪车的主钥匙赋予泊车钥匙部分权限,而你赋予你的邻居所有的权限。比较之下,我们更希望使用豪车模型赋予部分权限,而不是邻居模型,万一他偷偷配了把钥匙呢?这种授权存在不安全性,在网络开发中也是如此。

登录时可以选择社交账号登录,这里以 QQ 为例。这里涉及三方:当前要登录的用户,以下简称 用户 ,其它两方是: , QQ 服务器 。因为 用户
之前注册过 QQ, 请求 QQ 服务器 授权用户的 QQ 基本信息,这样用户就不用在上再进行注册了。

下面来探讨下 QQ 服务器 如何授权 当前 用户 的 QQ 基本信息。

这种方法比较简单, 用户 告诉 它的 QQ 账号密码,拿着账号密码去请求 QQ 服务器获取用户基本信息。

优点 : *** 作简单。

缺点 :用户将 qq 账号密码给了,获得了该用户在 QQ 上的所有特权,不仅可以查看基本信息,还可以查看 QQ 空间,查看 QQ 邮箱等,而用户的本意是只让获取 QQ 基本信息这一项特权。

下面是在 小胡子哥的个人博客 里看到的,将整个授权过程讲解的生动形象,我就不做二次加工,直接截取部分内容如下。

开发微信小程序第一步要在 微信公众平台 上注册一个账号,注册完成后在 设置 > 开发设置 里可以看到 AppID 和 AppSecret,这相当于上面提到的 Client Id 和 Client Secret。

微信登录用户 在 微信 中打开 小程序 , 小程序 中运行了 wxlogin 接口,此时 小程序 拿着 appid 去请求 微信服务器 给 小程序 授权,让它可以调用一些微信接口,比如获取微信登录用户的基本信息。因为是 微信登录用户 进行 *** 作的,所以微信那端默认是同意授权的。(appid 哪里来?在新建小程序项目时输入,每个 appid 和小程序都是一一对应的)

上面也提到,这个 code 可能会泄露,所以需要 code + appid + appsecret 去再次拜访微信服务器获取令牌 session_key 和用户标识 openid。

这里有个疑问?为什么获取 code 在小程序上做,而获取 session_key 在第三方服务器上 *** 作?这是因为获取 code 需要使用 appid 去跳转微信服务器授权页面,再使用当前 微信登录用户 默认同意此次授权,如果坐在第三方服务器上,appid 我们是知道的,但是当前 微信登录用户 是不知道,只要手机上的微信知道。

那为什么请求 session_key 在第三方服务器上 *** 作?这是因为前面也说过 code 只能表明微信服务器统一此次授权,但是 code 可能会泄露,还需要第二张门票 appsecret 告诉微信服务器 “就是我,不是别人” 来请求获取 session_key 的。可见 appsecret 对于安全的重要性,放在第三方服务器方便管理。

关于 openid 和 session_key 说明?session_key 就是返回的绿卡,此后每次访问微信服务器资源都要带上它,这样微信服务器才知道此次请求是有授权的,我可以把资源给你。openid 是同意授权的那个人,这里是 微信登录用户 的标识 ID。也就是为什么 code 要在小程序中获取中我们不知道的那个 微信登录用户 ID。

到此,上图中涉及 Oauth20 的部分已经结束,下面的那些都是普通的 session 维持会话机制,这里就不再赘述。

由于作者文笔有限,文章如有遗漏或表达有误,请不吝赐教。如果仍对微信授权或 Oauth20 有疑问的,欢迎留言讨论。

微信小程序军旗进不去的可能原因有很多,以下是一些常见的原因:
1 服务器故障或维护:如果军旗的服务器出现故障或正在进行维护,用户可能会无法登录或者持续加载。
2 网络问题:网络连接不稳定时,用户可能会遇到小程序打开速度缓慢或者进入不了小程序的情况。
3 授权问题:如果您在使用小程序时没有授权相关权限,可能会导致无法进入或者某些功能无法使用。
4 小程序版本问题:如果您的微信小程序更新失败或者是使用的版本过低,可能会影响军旗的运行。
5 地区限制:军旗可能在一些地区受限制,造成用户无法使用。
如果您遇到了以上问题,请先检查网络连接是否正常,以及确认已经授权了所有必要的权限。如果这些都没有解决问题,可以尝试刷新页面或者重新安装小程序等方式尝试解决问题。如果问题仍然存在,建议联系军旗的客服团队以获取帮助。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/12750516.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-27
下一篇 2023-05-27

发表评论

登录后才能评论

评论列表(0条)

保存