最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序 同步請(qǐng)求授權(quán)的詳解

 更新時(shí)間:2017年08月04日 15:19:11   作者:xiaochun365  
這篇文章主要介紹了微信小程序 同步請(qǐng)求授權(quán)的詳解的相關(guān)資料,在小程序首次打開的時(shí)候,我需要同時(shí)請(qǐng)求獲取多個(gè)權(quán)限,由用戶逐一授權(quán),這樣的需求實(shí)現(xiàn),需要的朋友可以參考下

微信小程序 同步請(qǐng)求授權(quán)的詳解

需求分析:

1.在小程序首次打開的時(shí)候,我需要同時(shí)請(qǐng)求獲取多個(gè)權(quán)限,由用戶逐一授權(quán)。

([‘scope.userInfo',‘scope.userLocation',‘scope.address',‘scope.record',‘scope.writePhotosAlbum']) 

問(wèn)題分析:

1. wx.authorize接口同時(shí)調(diào)用,請(qǐng)求多個(gè)權(quán)限,由于異步原因,將授權(quán)請(qǐng)求一并發(fā)出,顯然不符合要求。

2. promise能很好的解決問(wèn)題,試著嘗試了一下,下面代碼分為兩個(gè)文件。

// scope.js
import es6 from '../helpers/es6-promise'

// 獲取用戶授權(quán)
function getScope(scopeName) {
 return new es6.Promise(function (resolve, reject) {
  // 查詢授權(quán)
  wx.getSetting({
   success(res) {
    if (!res.authSetting[scopeName]) {
     // 發(fā)起授權(quán)
     wx.authorize({
      scope: scopeName,
      success() {
       resolve(0)
      }, fail() {
       resolve(1)
      }
     })
    }
   }
  })
 })
}

module.exports = { getScope: getScope }

// index.js
import scope from "../../service/scope"
Page({
onShow() {
  let list = ["scope.userInfo", "scope.userLocation", "scope.address", "scope.record"];
  // 記錄請(qǐng)求結(jié)果
  let num = 0;
  // 問(wèn)題1:怎么改成循環(huán)方式?
  scope.getScope(list[0]).then(function (res) {
   num += res;
   scope.getScope(list[1]).then(function (res) {
    num += res;
    scope.getScope(list[2]).then(function (res) {
     num += res;
     scope.getScope(list[3]).then(function (res) {
      num += res;
      // 調(diào)起設(shè)置界面
      if (num) {
       wx.openSetting({
        success(res) {
         // 允許獲取用戶信息
         if (res.authSetting["scope.userInfo"])
          userService.login()
        }
       })
      } else {
       userService.login()
      }
     })
    })
   })
  })
})

分析求解:

1.代碼中問(wèn)題1寫法過(guò)于笨,但是嘗試通過(guò)循環(huán)方式調(diào)用寫法,又不知道如何處理回調(diào)問(wèn)題。

2.wx.authorize接口,success參數(shù)官方給出的解釋是(接口調(diào)用成功的回調(diào)函數(shù)),其實(shí)不然,實(shí)際上是接口調(diào)用成功,并且獲取到了scope指定的權(quán)限

如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論

东阿县| 河津市| 乐都县| 札达县| 宁津县| 贵定县| 图木舒克市| 西昌市| 利津县| 阿拉善盟| 三亚市| 遵化市| 巴林左旗| 汉中市| 闽清县| 甘泉县| 棋牌| 蕲春县| 西畴县| 乐清市| 乌苏市| 永嘉县| 岢岚县| 施甸县| 文化| 韩城市| 泰宁县| 抚远县| 屯门区| 石屏县| 桑植县| 修水县| 邯郸县| 黑河市| 米林县| 汝南县| 赫章县| 碌曲县| 长寿区| 秦皇岛市| 木兰县|