微信小程序之授权模块

1 获取用户授权设置:wx.getSetting(Object object)

获取用户的当前授权情况,返回值中只会出现小程序已经向用户请求过的权限

Object object

属性类型默认值必填说明
successfunction 接口调用成功的回调函数
failfunction 接口调用失败的回调函数
completefunction 接口调用结束的回调函数(调用成功、失败都会执行)

 

success 回调函数

res object:对象中的authsetting记录着授权信息

属性类型说明
authSettingAuthSetting用户授权结果
  • 用户信息:scope.userInfo
  • 地理位置:scope.userLocation
  • 通讯地址:scope.address
  • 发票抬头:scope.invoiceTitle
  • 发票:scope.invoice
  • 微信运动步数:scope.werun
  • 录音功能:scope.record
  • 是否授权保存到相册:scope.writePhotosAlbum
  • 是否授权摄像头:scope.camera

 

1.1 使用案例

查看小程序是否有获取用户信息的权限

wx.getSetting({
  success(res) {
    console.log(res.authSetting['scope.userInfo']))
  }
})

 

2 发起授权请求:wx.authorize(Object object)

向用户发起授权请求。调用后会立刻弹窗询问用户是否同意授权小程序使用某项功能或获取用户的某些数据,如果用户之前已经同意授权,则不会出现弹窗,直接返回成功

Object object

属性类型默认值必填说明
scopestring 需要获取权限的 scope
successfunction 接口调用成功的回调函数
failfunction 接口调用失败的回调函数
completefunction 接口调用结束的回调函数(调用成功、失败都会执行)

 

2.2 使用案例

获取用户地理位置

// 通过 wx.getSetting 先查询小程序是否有获取用户地理位置的权限,如果没有则向用户发起授权请求。
wx.getSetting({
  success(res) {
    if (!res.authSetting['scope.userLocation']) {
      wx.authorize({
        scope: 'scope.userLocation',
        success() {
         
         //授权后的业务逻辑
          
        }
      })
    }
  }
})

 

3 小程序的官方授权列表 

scope对应接口描述
scope.userInfowx.getUserInfo用户信息
scope.userLocationwx.getLocationwx.chooseLocation地理位置
scope.addresswx.chooseAddress通讯地址
scope.invoiceTitlewx.chooseInvoiceTitle发票抬头
scope.invoicewx.chooseInvoice获取发票
scope.werunwx.getWeRunData微信运动步数
scope.recordwx.startRecord录音功能
scope.writePhotosAlbumwx.saveImageToPhotosAlbumwx.saveVideoToPhotosAlbum保存到相册
scope.camera<camera /> 组件摄像头

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值