广告
返回顶部
首页 > 资讯 > 移动开发 >简单实现小程序授权登录功能
  • 739
分享到

简单实现小程序授权登录功能

小程序 2023-09-02 17:09:21 739人浏览 八月长安
摘要

       本人给大家带来了关于微信小程序的相关知识,其中主要介绍了怎么实现小程序授权登录功能的相关内容,下面一起来看一下,希望对大家有帮助。        在我们平时工作、学习、生活中,微信小程序已成为我们密不可分的一部分,我们仔细留意

       本人给大家带来了关于微信小程序的相关知识,其中主要介绍了怎么实现小程序授权登录功能的相关内容,下面一起来看一下,希望对大家有帮助。

       在我们平时工作、学习、生活中,微信小程序已成为我们密不可分的一部分,我们仔细留意下,每当我们使用一个新的小程序时,总会遇到如下页面: 

       这便是微信小程序授权登录功能了,授权登录后,我们就可以正常使用小程序,而小程序也会获取到我们的用户权益,手机号等个人信息 。

授权登录功能剖析

微信小程序的授权登录具体步骤如下图所示

 

具体实现主要有以下三个步骤:

调用wx.login() 微信api获取临时登录凭证code,并回传到开发服务器

调用auth.code2Session 微信api接口,获取用户唯一标识OpenID、 用户在微信开放平台帐号下的唯一标识UNIOnID和会话密钥session_key

通过步骤2获取的参数进行解密操作,获取用户手机号,头像等特性,并把需要的数据保存到缓存

步骤实现代码如下:

一、获取临时登录凭证code

由于微信官方修改了getUserInfo接口,现在无法实现一进入微信小程序就会自动弹出授权窗口,所以我们只能通过button按钮让用户手动触发

我们先写一个简单的弹框,用isShow变量控制,isshow取决于步骤3中的缓存信息,当所有步骤都走通,会正确缓存用户信息,此时弹框隐藏,否则弹框都为显示状态


              需要先授权获取个人信息              

 点击按钮时,调用getUserInfo方法,isShow设置为false,同时使用wx.login获取到登录凭证code

getUserInfo:e=>{   this.setData({      isShow:false   })    wx.login({      success: function (res) {         let code = res.code // 登录凭证code      }   })       }

二、根据登录凭证code,获取用户登录信息

拿到登录凭证code后,调用auth.code2Session 微信api接口(此处为服务端操作,后端大佬搞定,我们直接调用他给的接口就好了

wx.request({   url: 获取用户信息的auth.code2Session微信api接口,   method: 'POST',   data:{      code:code//登录凭证code   },   header: {      'content-type': 'application/JSON;charset=UTF-8'   },   success: function (res) {      var userphone= res.data.data                  //解密手机号      var msg = e.detail.errMsg;      var sessionKey = userphone.session_key;//会话密钥      var encryptedData=e.detail.encryptedData; //签名      var unionid = userphone.unionid//唯一标识      var iv= e.detail.iv;                  //授权成功      if (msg == 'getPhoneNumber:ok') {         wx.checkSession({            success:function(){                        //进行请求服务端解密手机号               this.deciyption(sessionKey,encryptedData,iv,unionid);            }         })      }   }})

此时大多数用户信息我们已经获取了,但用户手机号,用户头像等信息还处于加密状态,我们需要去解密获取这些参数

三、根据用户信息,解密获取用户手机号

deciyption(sessionKey,encryptedData,iv,unionid){    var that = this;    wx.request({      url: 解密接口,      method: 'POST',      data: {        sessionKey: sessionKey,        encryptedData:encryptedData,        iv: iv      },      header: {        'content-type': 'application/json;charset=UTF-8'      },      success: function(res) {        let data = res.data        if (data.resultCode == 'success') {            wx.setStorageSync('userTel', data.data.phoneNumber);//存储解密后的用户手机号        }else{            wx.showToast({                title: '获取信息失败请重新授权',                icon: 'none'            })            that.setData({                isShow:true            })        }          },      fail:function(res) {        wx.showToast({            title: '获取失败请重新授权',            icon: 'none'        })        that.setData({          isShow:true        })      }   })},

此时授权登录功能已完成

来源地址:https://blog.csdn.net/qq974416775/article/details/128278797

--结束END--

本文标题: 简单实现小程序授权登录功能

本文链接: https://www.lsjlt.com/news/391141.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 简单实现小程序授权登录功能
           本人给大家带来了关于微信小程序的相关知识,其中主要介绍了怎么实现小程序授权登录功能的相关内容,下面一起来看一下,希望对大家有帮助。        在我们平时工作、学习、生活中,微信小程序已成为我们密不可分的一部分,我们仔细留意...
    99+
    2023-09-02
    小程序
  • 简单实现微信小程序授权登录
    可以直接复制粘贴,只需要改一些东西就可以了 首先在wxml中用微信自带的button开放属性 授权登录 然后在对应的js中创建一个login方法,因为上面bindtap指向的是login,所以就要创建一个新的方法 login(evt){/...
    99+
    2023-10-04
    php 微信小程序
  • 如何实现小程序授权登录功能
    这篇文章主要介绍“如何实现小程序授权登录功能”,在日常操作中,相信很多人在如何实现小程序授权登录功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何实现小程序授权登录功能”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-07-04
  • 微信小程序授权登录功能如何实现
    这篇文章主要介绍“微信小程序授权登录功能如何实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“微信小程序授权登录功能如何实现”文章能帮助大家解决问题。微信授权登录我们的项目开发有时候用到用户的一些信...
    99+
    2023-07-05
  • 【微信授权登录】uniapp开发小程序,实现获取微信授权登录功能
    一、解题思路: 微信授权登录(获取用户信息) 1.先获取用户信息——用户授权允许后,通过调用uni.login 可以获取到code。 2.拿着获取到的code去调用——登录接口,可以获取到token。 3.把token存入缓存。就可以在页面...
    99+
    2023-08-16
    小程序 微信 javascript
  • uniapp开发小程序,实现获取【微信授权登录】功能
    APP微信授权登录需要到微信开放平台申请,在HBuilderX配置APP SDK中微信登录的appId,另外需要跟小程序、公众号授权账号互通的话也需要在微信开放平台申请 1、在微信公众平台申请应用,获取相应的appid和appsecret ...
    99+
    2023-09-28
    uni-app 小程序 微信
  • uniapp-小程序登录授权框
    微信官方文档 不弹出授权框原因 因为版本问题,目前的最新的版本是不支持 wx.getUserInfo 去主动弹出授权框 只能引导用户去点击 butten 去授权 解决方法         我的思路是参考了其他的微信微信小程序, 就是跳转...
    99+
    2023-09-12
    uni-app 小程序
  • 微信小程序授权登录
    微信小程序—授权登录 一、小程序登录 登录流程时序 说明: 1.小程序端调用 wx.login() 获取临时登录凭证code ,并回传到开发者服务器。 2.服务器调用 code2Session 接口,换取 用户唯一标识 OpenID 和 ...
    99+
    2023-09-01
    微信小程序 小程序 微信 授权登录
  • 怎么实现小程序的登录与授权
    这篇文章主要介绍怎么实现小程序的登录与授权,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!登录:如果我们要实现小程序的登录,不妨尝试在开启小程序的时候完成登录。也就是说我们可以在app.js中的onlaunch方法中添...
    99+
    2023-06-06
  • 微信小程序如何实现授权登录
    这篇文章给大家分享的是有关微信小程序如何实现授权登录的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、前言由于微信官方修改了 getUserInfo 接口,所以现在无法实现一进入...
    99+
    2022-10-19
  • 新版小程序怎么实现登录授权
    这篇文章主要介绍新版小程序怎么实现登录授权,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!小程序自上线以来,官方一直在调整API,因此也出现了一批被废弃的接口,作为程序员的我们,此时此...
    99+
    2022-10-19
  • 小程序实现登录功能
    本文实例为大家分享了小程序实现登录功能的具体代码,供大家参考,具体内容如下 小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系。 1、...
    99+
    2022-11-13
  • 如何实现微信小程序之授权登录
    这篇文章主要介绍如何实现微信小程序之授权登录,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.实现思路自己写一个微信授权登录页面让用户实现点击的功能,也就是实现了通过 button 组件去触发 getUserInof...
    99+
    2023-06-14
  • 如何实现uni-app微信小程序授权登录
    小编给大家分享一下如何实现uni-app微信小程序授权登录,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、appID相关申请和配置1. appid获取方式登录微...
    99+
    2023-06-22
  • 【Springboot】整合wxjava实现 微信小程序:授权登录
    文章目录 一、wxjava是什么二、使用步骤1.引入依赖2.配置yml3.小程序的配置4.后端的业务逻辑代码controllerserviceimpldto 5.前端的业务逻辑代码新建...
    99+
    2023-09-09
    微信小程序 spring boot 小程序
  • 微信小程序如何授权登录
    小编给大家分享一下微信小程序如何授权登录,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!注:没有在微信开放平台做开发者资质认证的就...
    99+
    2022-10-19
  • 怎么授权登录微信小程序
    本篇文章为大家展示了怎么授权登录微信小程序,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。授权登录的基本流程上图是微信小程序官网提供的授权登录基本流程图,这里我只从前端开发的角度来讲解一下该流程。通过...
    99+
    2023-06-08
  • Servlet简单实现登录功能
    本文实例为大家分享了Servlet简单实现登录功能的具体代码,供大家参考,具体内容如下 介绍: Servlet 是 JavaWeb 三大组件之一。三大组件分别是:Servlet 程序...
    99+
    2022-11-11
  • uni-app 微信小程序授权登录的实现步骤
    目录一、appID相关申请和配置1. appid获取方式2. appID配置二、获取用户基础数据2.1. 获取用户信息2.2. 获取用户信息2三、调用登录api3.1. 登录api3...
    99+
    2022-11-12
  • 小程序实现简单列表功能
    本文实例为大家分享了小程序实现简单列表功能的具体代码,供大家参考,具体内容如下 列表组件 for只要给组件增加for一个数组那么就可以实现列表组件 wxml代码 <bloc...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作