微信小程序API修改小程序的授權(quán)信息,wx.authorize需要獲得同意后才能調(diào)用
2017-12-22
導讀:wx.authorize(OBJECT) 基礎庫 1.2.0 開始支持,低版本需做兼容處理 部分接口需要獲得同意后才能調(diào)用。此類接口調(diào)用時,如果用戶未授權(quán)過,會彈窗詢問用戶,用戶點擊同意后方可調(diào)用接口...
wx.authorize(OBJECT)
基礎庫 1.2.0 開始支持,低版本需做兼容處理
部分接口需要獲得同意后才能調(diào)用。此類接口調(diào)用時,如果用戶未授權(quán)過,會彈窗詢問用戶,用戶點擊同意后方可調(diào)用接口。如果用戶點了拒絕,則短期內(nèi)調(diào)用不會出現(xiàn)彈窗,而是直接進入 fail 回調(diào)。用戶可以在小程序設置界面中修改對該小程序的授權(quán)信息。本接口用于提前向用戶發(fā)起授權(quán),調(diào)用后會立刻彈窗詢問用戶是否同意小程序使用某項功能或獲取用戶的某些數(shù)據(jù),但不會實際調(diào)用接口。如果用戶之前已經(jīng)同意,則不會出現(xiàn)彈窗,直接返回成功。
OBJECT參數(shù)說明:
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
scope | String | 是 | 需要獲取權(quán)限的scope,詳見 scope 列表 |
success | Function | 否 | 接口調(diào)用成功的回調(diào)函數(shù) |
fail | Function | 否 | 接口調(diào)用失敗的回調(diào)函數(shù) |
complete | Function | 否 | 接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行) |
success返回參數(shù)說明:
參數(shù)名 | 類型 | 說明 |
---|---|---|
errMsg | String | 調(diào)用結(jié)果 |
示例代碼:
// 可以通過 wx.getSetting 先查詢一下用戶是否授權(quán)了 "scope.record" 這個 scope
wx.getSetting({
success(res) {
if (!res.authSetting['scope.record']) {
wx.authorize({
scope: 'scope.record',
success() {
// 用戶已經(jīng)同意小程序使用錄音功能,后續(xù)調(diào)用 wx.startRecord 接口不會彈窗詢問
wx.startRecord()
}
})
}
}
})
scope 列表
scope | 對應接口 | 描述 |
---|---|---|
scope.userInfo | wx.getUserInfo | 用戶信息 |
scope.userLocation | wx.getLocation, wx.chooseLocation | 地理位置 |
scope.address | wx.chooseAddress | 通訊地址 |
scope.record | wx.startRecord | 錄音功能 |
scope.writePhotosAlbum | wx.saveImageToPhotosAlbum, wx.saveVideoToPhotosAlbum | 保存到相冊 |
第二部分:如何開通一個小商店