小程序快速获取openid
生活随笔
收集整理的這篇文章主要介紹了
小程序快速获取openid
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 前言
- 一、openid 是什么?
- 二、獲取 openid
- 1.云函數 getOpenid
- 2.調用 getOpenid 獲取 openid
- 總結
前言
在開發微信小程序時,常常需要獲取微信用戶的 openid 來區分用戶身份,用戶 openid 就相當于用戶在小程序里的身份證,因此我們就需要知道如何來獲取小程序 openid
一、openid 是什么?
用戶openid是作為用戶在小程序中的唯一標識,相當于用戶在小程序里的身份證。每個小程序都會給每個用戶分配一個唯一的openid,不過用戶在不同的小程序openid是不相同的,只有在同一個小程序中時才一樣。
二、獲取 openid
獲取 openid 傳統的方法是先獲取用戶臨時登錄憑證 code ,在開發者服務器后臺調用 code2Session,把code傳給后端,后端根據傳遞過來的 code ,以及從小程序后臺獲取的appId、appsecret,拼接到地址上,然后這個地址會返回openId,session_key,后端獲取完之后再把openid返回給前端。這個方法比較麻煩,需要有一個后端服務器,因此對于個別人來說顯得無能為力。但是還有一種比較快捷簡單的方法,通過云函數直接獲取用戶的 openid。
1.云函數 getOpenid
// 云函數入口文件 const cloud = require('wx-server-sdk')cloud.init()// 云函數入口函數 exports.main = async (event, context) => {const wxContext = cloud.getWXContext()return {event,openid: wxContext.OPENID, // 返回的openidappid: wxContext.APPID,unionid: wxContext.UNIONID,} }獲取 openid 的云函數其實是一個模板函數,新建的云函數默認生成了相應的代碼,不需要修改。如果不知道云函數為何物,可移步至小程序云開發入門
2.調用 getOpenid 獲取 openid
wx.cloud.callFunction({name: 'getOpenid',complete: res => {console.log('openid: ', res.result.openid)} })調用結果:
總結
云函數獲取 openid 是一種比較快捷的方法,特別對于沒有后端服務器的同學來說。而云函數本質也是運行在服務端的,因此也可以方便獲取且不需要我們編寫什么代碼。
總結
以上是生活随笔為你收集整理的小程序快速获取openid的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开源免费CRM
- 下一篇: impinj R2000开发板维修记录—