前提:需要小程序和公众号绑定在同一开放平台!
简述实现步骤:
1.获取accessToken
2.获取公众号关注用户的openid
3.用openid和accessToken去获取公众号关注用户的基本信息(主要是拿到unionid)
4.小程序端获取unionid
5.查找存储公众号用户信息的数据库
6.如果unionid有值,代表用户已经关注公众号
具体步骤:
1.获取accessToken,存储在数据库
const cloud = require('wx-server-sdk')
const request = require('request')
cloud.init({
env: cloud.DYNAMIC_CURRENT_ENV
})
const db = cloud.database()
const APPID = "从开发者平台获取"
const secret = "从开发者平台获取"
/** 每隔1小时获取接口调用权限Token */
exports.main = async () => {
const url = "https://api.weixin.qq.com/cgi-bin/token"
const paramObj = {
grant_type: "client_credential",
appid: APPID,
secret: secret,
}
let accessTokenObj = await requestFun(url, paramObj)
accessTokenObj = JSON.parse(accessTokenObj)
console.log(accessTokenObj)
let addRes = null
try {
addRes = await addAccessToken(accessTokenObj)
console.log("===== 插入accessToken结果 =====", addRes)
} catch (error) {
addRes = await addAccessToken(accessTokenObj)
// sendErrorMsg(addRes.errMsg)
console.log("===== 插入accessToken结果 =====", error)
}
const totalObj = await getAccessToken(accessTokenObj.access_token)
if (totalObj.total <= 0) {
addRes = await addAccessToken(accessTokenObj)
// sendEr