OpenId 가져오기 및 글로벌 변수 또는 로컬 캐시 저장

2218 단어
위챗 애플릿에서 OpenId를 얻으려면 먼저 무작위 코드 코드를 얻은 다음에 유일한 OpenId를 교환해야 한다.
코드 코드를 가져오는 코드는 다음과 같습니다.
//app.js
App({
  onLaunch: function() {
    wx.login({
      success: function(res) {
        if (res.code) {
          console.log('         !' + res.code) 
        } else {
          console.log('         !' + res.errMsg)
        }
      }
    });
  }
})

자세한 코드는 다음과 같이 가져온 코드 코드를 사용하여 OpenId로 바꿉니다.
//  code  openid   
wx.login({
        //  code
        success: function (res) {
          var code = res.code; //  code
          console.log(code);
          var appId = '...';//     APPID
          var secret = '...';//     
          wx.request({
            url: 'https://api.weixin.qq.com/sns/jscode2session?appid=' + appId + '&secret=' + secret + '&js_code=' + code + '&grant_type=authorization_code',
            data: {},
            header: {
              'content-type': 'json'
            },
            success: function (res) {
              var openid = res.data.openid //  openid
              console.log('openid ' + openid);
            }
          })
        }
      })

OpenId를 성공적으로 획득한 후에는 글로벌 변수 또는 로컬 캐시에 저장하여 쉽게 액세스할 수 있도록 해야 합니다. 자세한 코드는 다음과 같습니다.
// code  openid
  getOpenId: function (code) { 
    var that = this;
    wx.request({
      url: 'http://test.com/getOpenId',
      method: 'GET',
      header: {
        'content-type': 'application/json'
      },
      data: {
        'code': code
      },
      success: function (res) {
        console.log(res)
        //1.          
        wx.setStorageSync('OpenId', res.data.OpenId)
        //2.          
        var app = getApp();
        app.globalData.openid = res.data.openid
        console.log('    ')
      },
      fail:function(){
        console.log('    ')
      }
    })
  },

글로벌 변수 및 로컬 캐시에 저장된 OpenId를 다음과 같이 취합니다.
//          OpenId
var app=getapp()
let openid=app.data.openid
//        OpenId
let openid=wx.getstorageSync('openid')

좋은 웹페이지 즐겨찾기