title: Taro.authorize(option)

sidebar_label: authorize

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

参考文档

类型

  1. (option: Option) => Promise<CallbackResult>

参数

Option

参数 类型 必填 说明
scope string 需要获取权限的 scope,详见 scope 列表
complete (res: CallbackResult) => void 接口调用结束的回调函数(调用成功、失败都会执行)
fail (res: CallbackResult) => void 接口调用失败的回调函数
success (res: CallbackResult) => void 接口调用成功的回调函数

示例代码

  1. // 可以通过 Taro.getSetting 先查询一下用户是否授权了 "scope.record" 这个 scope
  2. Taro.getSetting({
  3. success: function (res) {
  4. if (!res.authSetting['scope.record']) {
  5. Taro.authorize({
  6. scope: 'scope.record',
  7. success: function () {
  8. // 用户已经同意小程序使用录音功能,后续调用 Taro.startRecord 接口不会弹窗询问
  9. Taro.startRecord()
  10. }
  11. })
  12. }
  13. }
  14. })

API 支持度

API 微信小程序 H5 React Native
Taro.authorize ✔️