-

工具类 API

云开发提供了一系列工具类的 API,此处是存储小程序端的 API 参考文档。

API 说明
getWXContext 获取微信上下文


getWXContext

在云函数中获取微信调用上下文,该方法无需传入参数,会返回以下字段:

字段含义字段存在条件最低版本
OPENID小程序用户 openid小程序端调用云函数时
APPID小程序 AppID小程序端调用云函数时
UNIONID小程序用户 unionid小程序端调用云函数,并且满足 unionid 获取条件
ENV云函数所在环境的 ID0.6.0
SOURCE调用来源(云函数本次运行是被什么触发)0.7.0

SOURCE 值跟随调用链条传递,会表示调用链路情况(用英文逗号分隔),比如小程序调用云函数 A,再在云函数 A 内调用云函数 B,则 A 获得的 SOURCE 为 wx_client, B 内获得的 SOURCE 为 wx_client,scf(微信小程序调用,然后云函数调用)。

SOURCE 的枚举类型:

SOURCE 值含义
wx_devtools微信 IDE 调用
wx_client微信小程序调用
wx_http微信 HTTP API 调用
wx_unknown微信未知来源调用
scf云函数调用云函数
其他非微信端触发

如果在云函数本地调试中,ENV 会为 local,SOURCE 会为 wx_client。

注意事项

请不要在 exports.main 外使用 getWXContext,此时尚没有调用上下文,无法获取得到信息。

使用示例

const cloud = require('wx-server-sdk')

exports.main = async (event, context) => {
  const {
    OPENID,
    APPID,
    UNIONID,
    ENV,
  } = cloud.getWXContext()

  return {
    OPENID,
    APPID,
    UNIONID,
    ENV,
  }
}