一文看懂微信小程序授权登录

本文详细介绍了微信小程序的授权登录流程,包括wx.getUserInfo的变更、使用button组件获取用户信息以及wx.login结合code获取用户手机号的方法。通过这些步骤,开发者可以实现用户授权登录并获取必要的个人信息。
摘要由CSDN通过智能技术生成

一、wx.getUserInfo授权登录

在2018年4月30日之前,可以使用 wx.getUserInfo 接口直接弹出授权框。

但在2018年4月30日开始,小程序与小游戏的体验版、开发版调用 wx.getUserInfo 接口,将无法弹出授权询问框,默认调用失败。

所以需要采用官网提供的其他方式进行授权登录

二、使用 button 组件

根据官网的后续说明,使用button组件,并将 open-type 指定为 getUserInfo 类型,可以获取用户基本信息。

<button
    wx:if="{{canIUse}}"
    open-type="getUserInfo"
    bindgetuserinfo="bindGetUserInfo"
>授权登录</button>
<view wx:else>请升级微信版本</view>
data: {
  //判断小程序的API,回调,参数,组件等是否在当前版本可用。
  canIUse: wx.canIUse('button.open-type.getUserInfo')
},

onLoad: function() {
  // 查看是否授权
  wx.getSetting({
    success: function(res){
      if (res.authSetting['scope.userInfo']) {
        wx.getUserInfo({
          success: function(res) {
            console.log(res.userInfo)
            //用户已经授权过
          }
        })
      }
    }
  })
},
bindGetUserInfo: function(e) {
  console.log(e.detail.userInfo)
  if (e.detail.userInfo){
    //用户按了允许授权按钮
  } else {
    //用户按了拒绝按钮
  }
},

授权弹框如下
微信授权登录
这里需要注意的是,获取的信息只包括头像、地区、昵称、性别等在这里插入图片描述

三、wx.login

利用wx.login获取到的code,在发送小程序的appid、secret和grant_type(授权类型)获取用户的信息,包括用户的手机号。

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
getPhoneNumber: function (e) {
   var that = this;
   wx.login({ 
		success(res) {	
			if (res.code) {
				//登陆成功并成功返回code便发起网络请求获得OPENID
				wx.request({
					url: 'fuwuqi.php',
					data: {
					     appid: "你的小程序APPID",
					     secret: "你的小程序appsecret",
					     code: res.code,
					     grant_type:"authorization_code"
				    },
					success: function(res){
						//获取用户的手机号
						phoneObj = res.data.phoneNumber;
	      	 			console.log("手机号=", phoneObj)
					}
				})
			}else{
				console.log('登录失败!'+res.errMsg);
			}
			if (e.detail.errMsg == 'getPhoneNumber:user deny') { //用户点击拒绝
			    wx.navigateTo({
			       	url: '../login/login',
			    })
			} else { //允许授权执行跳转
			    wx.navigateTo({
			        url: '../index/index',
			    })
			}
		}
	})
}

授权手机号
这样下来就能获取信息进行授权登录啦~

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
微信小程序是一种基于微信平台的轻量级应用,具有便捷、快速、易用等特点。近年来,微信小程序逐渐成为了社交、电商、教育、医疗等各行业的重要工具。在社交领域,微信小程序也被广泛应用于群相册的管理和分享。本文将对国内外关于基于微信小程序的群相册的研究现状进行探讨。 一、国内研究现状 在国内,基于微信小程序的群相册的研究主要集中在开发实现和用户体验方面。如《基于微信小程序的群相册设计与实现》一文介绍了如何利用微信小程序实现群相册的功能,并提出了优化用户体验的方法,如添加轮播图、图片预览等功能。此外,《微信小程序群相册的设计与实现》也对微信小程序群相册的设计、实现和功能进行了详细介绍,并通过用户调研分析了用户对群相册的需求和使用情况。 二、国外研究现状 在国外,基于微信小程序的群相册的研究主要集中在群相册的安全性和隐私性方面。如《微信小程序群相册的安全问题研究》一文通过对微信小程序群相册的安全性进行分析,提出了加强用户身份验证、限制访问权限等措施来提高群相册的安全性。此外,《微信小程序群相册的隐私问题研究》也探讨了如何保护群相册的隐私,如限制分享、加密传输等方法。 三、总结与展望 目前,基于微信小程序的群相册已经成为了社交领域的热门应用之一。国内研究主要集中在开发实现和用户体验方面,而国外研究则主要关注群相册的安全性和隐私性。未来,随着微信小程序的发展和应用场景的不断拓展,基于微信小程序的群相册也将继续得到关注和研究。同时,如何提高群相册的智能化和个性化也是未来研究的方向之一。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值