1. 程式人生 > >藉助小程式雲開發獲取小程式使用者openid

藉助小程式雲開發獲取小程式使用者openid

openid作為小程式使用者的唯一標示,就相當於使用者在微信裡的身份證一樣,我們做小程式開發時,獲取使用者的openid是很重要的。我們之前獲取使用者的openid,如下圖官方文件說明,是通過該wx.login先獲取臨時憑證,然後再用臨時憑證去換取使用者的openid,這樣做無可厚非,但是小程式出了雲開發之後,再用這種方法獲取使用者openid就顯得有些麻煩了,因為通過雲開發獲取使用者openid特別方便,並且可靠。

image.png

一,開啟雲開發

開啟雲開發
開啟雲開發只需要在開發者工具裡點選上面紅色框裡的雲開發按鈕即可,建立成功後如下圖
image.png

二,建立雲函式

  • 1,建立雲函式所需資料夾
    建立雲函式所需資料夾

  • 2,右鍵點選functions,點選同步雲函式列表
    image.png

  • 3,右鍵點選functions,點選新建node.js雲函式
    建立雲函式

  • 4,建立名為getOpenid的雲函式
    雲函式建立成功

  • 5,編寫獲取openid的程式碼
    雲函式程式碼

// 雲函式入口檔案
const cloud = require('wx-server-sdk')
cloud.init()
//獲取使用者的openid
exports.main = async(event, context) => {
 return event.userInfo; //返回使用者資訊
}
  • 6,右鍵點選getOpenid,上傳並部署雲函式。
    image.png

三,使用getOpenid雲函式獲取使用者openid

  • 1,在app.js裡初始化雲開發
//app.js
App({
 onLaunch: function() {
  //雲開發初始化
  wx.cloud.init({
   env: 'prod-8aa9a5',
   traceUser: true
  })
 }
})
  • 2,在首頁使用雲函式獲取openid
//home.js
Page({
  data: {
    openid: '',
  },
  onLoad: function () {
   this.getOpenid();
  },
 // 獲取使用者openid
 getOpenid() {
  let that = this;
  wx.cloud.callFunction({
   name: 'getOpenid',
   complete: res => {
    console.log('雲函式獲取到的openid: ', res.result.openId)
    var openid = res.result.openId;
    that.setData({
     openid: openid
    })
   }
  })
 }
})

獲取結果如下
獲取到openid

到此我們就輕鬆的藉助雲開發雲函式獲取到了使用者的openid了

有小程式相關的問題,可以加我微信2501902696(備註小程式)