欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

微信小程序中常见的几种授权

程序员文章站 2024-02-17 13:55:04
...

微信小程序中常见的几种授权:
微信小程序中常见的几种授权
代码下载地址:https://download.csdn.net/download/weixin_39152200/12569931
压缩包中包含两个文件:authorize.js和md5.js
使用方法: 将这两个文件放到utils目录中,在需要使用的页面js文件中引入

let authorize = require('../../utils/authorize.js');

授权方法调用:
1、登录 + 获取openID
在authorize.js的login方法中,修改获取openID的接口地址微信小程序中常见的几种授权
然后在页面中调用:

authorize.login().then(res => {
  // 调用成功
  console.log(res)
}).catch(res => {
  // 调用失败
})

2、获取用户信息

authorize.getUserInfo().then(res => {
  // 调用成功
  console.log(res)
  if (res) { // 获取用户信息成功

  } else { // 用户未授权

  }
}).catch(res => {
  // 调用失败
})

authorize.js中的方法只能在用户已经授权的情况下获取用户信息,如果用户没有授权,需要引导用户点击授权按钮,见文档:https://developers.weixin.qq.com/community/develop/doc/0000a26e1aca6012e896a517556c01
具体方法以后会单独出一期

3、获取用户授权信息
获取用户授权信息,若未授权会调起授权弹框(获取用户信息的时候除外),可以选择是否必须授权才能进行下一步,接下来以获取地理位置为例

authorize.getAuthSetting('scope.userLocation', true, '地理位置信息').then(res => {
  console.log(res) // res为true则表示已经授权,false表示未授权
}).catch(res => {
  // 调用失败
})

getAuthSetting方法有三个参数:

  • 第一个参数代表需要授权的权限字段名,具体值见微信官方文档中scoped列表
    微信小程序中常见的几种授权
  • 第二个参数代表是否必须授权才能进行下一步,为true则必须,false为非必须
  • 第三个参数代表权限的描述,用于弹框提示中的显示

4、获取用户地理位置
这里获取地理位置使用的是签名算法,需要去腾讯地图开放平台中申请key并进行配置
微信小程序中常见的几种授权
首先在authorize.js中填写腾讯地图的key和签名
微信小程序中常见的几种授权
然后在页面中调用

authorize.getLocation().then(res => {
  console.log(res)
}).catch(res => {
  // 调用失败
  console.log(res)
})