PC端登录需要在微信开放平台申请,而移动端授权登录只需要有已经认证的服务号即可。然后同一个网站平台,用同一个微信用户去登录,会发现PC端获取的微信用户openid和移动端不同,这个问题如何解决?
一、官方做法
我们需要在微信开放平台绑定微信服务号,这个时候就有一个奇葩的事情出现,如果该微信服务号没有申请微信小程序,那么微信开放平台提示必须先开通小程序。
那么在微信开放平台绑定微信服务号后,我们就可以获取到统一的一个UnionID,这个UnionID无论是Pc端微信登录还是移动端微信登录,都是统一的。
我们看下官方的解释:
UnionID机制的作用说明:如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的unionid来区分用户的唯一性,因为同一用户,对同一个微信开放平台下的不同应用(移动应用、网站应用和公众帐号),unionid是相同的。
二、另辟蹊径的做法
场景1、
1、手机号注册-》成功。
2、该用户第一次使用PC端微信登陆,则到达绑定手机号页面,如果该手机号已经注册,则更新数据表字段weixin_open_id。
3、该用户第二次使用PC端微信登陆,更新最后一次登录时间。
场景2、
1、手机号注册-》成功。
2、该用户第一次使用移动端微信登陆,则到达绑定手机号页面,如果该手机号已经注册,则更新数据表字段weixin_open_id_m。
3、该用户第二次使用移动端微信登陆,更新最后一次登录时间。
场景3、
1、该用户第一次使用PC端微信登陆,则到达绑定手机号页面,绑定手机号,插入记录。
2、该用户第二次使用PC端微信登陆,更新最后一次登录时间。
场景4、
1、该用户第一次使用移动端微信登陆,则到达绑定手机号页面,绑定手机号,插入记录。
2、该用户第二次使用移动端微信登陆,更新最后一次登录时间。
总之,无论用户第一次是手机号注册还是PC端微信登陆、移动端微信登陆,只要是第一次登陆,我们都会拿到用户的手机号,那么手机号作为该用户凭证。
三、需要注意
我们可以用如下代码判断是PC微信登录还是移动端微信登录:
if(request()->isMobile()){
//移动端
}else{
//PC端
}
PC微信登录和移动端微信登录需要分别处理。
最后
我们还是建议大家用官方做法,如果遇到某些情况可以使用第二种。另外对于大型网站来说,PC端和移动端单独分开,不适合自适应网站开发。
以上就是微信PC端登录和手机端登录逻辑分享的详细内容,更多请关注爱上源码网其它相关文章!
微信
分享
相关标签:微信PC端 手机端
本文原创发布爱上源码网,转载请注明出处,感谢您的尊重!
- 上一篇:全方位解读php8.0版本优化与改进
- 下一篇:带你一分钟了解php的四大特性八大优势(详情)
相关文章
相关视频
- 教你用PHP实现微信小程序人脸识别刷脸登录功能
- php模拟qq登录代码
- 在微信小程序中用户登录和登录状态维护
- 单点登录的好处有哪些
- 微信PC端登录和手机端登录逻辑分享
- 如何定制群发微信消息
- 如何自动拉微信群
- 安装微信开发者工具
- 微信开发者工具
本文有爱上源码下载完入驻作者发布,如果对您版权造成侵害,可以联系本站站长管理进行维权删除,本站收到维权24小时内进行处理,谢谢您关注23ym.cn!
本站分享大量程序员技术文章以及对编程开发的初级入门教程,包括图文讲解笔记和高清视频下载~ |