开发 API 开放接口 授权 ks.authorize
# ks.authorize
更新时间:2024-09-29 21:58:36
向用户发起授权请求。调用后会立刻弹窗询问用户是否同意授权小程序使用某项功能或获取用户的某些数据。如果用户之前已经同意授权,则不会出现弹窗,直接返回成功。
# authorize(options: AuthorizeOptions): Promise<void>
# 参数
参数 | 类型 | 必填 |
---|---|---|
options | AuthorizeOptions | 是 |
# AuthorizeOptions
属性
属性 | 类型 | 必填 | 说明 |
---|---|---|---|
scope | 'scope.userInfo' | 'scope.userLocation' | 'scope.userLocationBackground' | 'scope.record' | 'scope.writePhotosAlbum' | 'scope.camera' | 是 | 需要获取的权限 |
success | (result: void) => void | 否 | 接口调用成功的回调函数 |
fail | (error: APIError) => void | 否 | 接口调用失败的回调函数 |
complete | (resultOrError: void | APIError) => void | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
scope
需要获取的权限
值 | 说明 |
---|---|
'scope.userInfo' | 用户信息权限 |
'scope.userLocation' | 地理位置权限 |
'scope.userLocationBackground' | 后台定位权限 |
'scope.record' | 录音权限 |
'scope.writePhotosAlbum' | 保存到相册权限 |
'scope.camera' | 相机权限 |
# 返回值
# Promise<void>
# 错误信息
错误信息 | 错误说明 |
---|---|
Invalid app | 应用不存在 |
beyond token/app/authorized scope | 请求被拒绝,可能是无效token或应用/用户不允许访问该接口 |
not exist user | 用户信息不存在 |
invalid scope | 请求授权的scope错误 |
# Bug & Tip
Tip:获取'scope.userInfo'授权前需要调用ks.login获取登录态,否则会报errMsg: "authorize:fail session expired"错误
Tip:获取'scope.userLocation授权需要在app.json配置,否则会报错errMsg: "authorize:fail 小程序未在 AppConfig 中注册该权限"
{
"pages": [
"pages/index/index"
],
"permission": {
"scope.userLocation": {
"desc": "你的位置信息将用于小程序位置接口的效果展示"
}
}
}
# 扫码体验
# 示例代码
上一篇:《ks.getAccountInfoSync》
下一篇:《ks.checkSession》
仍有疑问? 前往社区提问