Cloud.getWXContext(): Object

支持端:云函数

在云函数中获取微信调用上下文

返回值

Object

wxContext

属性 类型 说明
OPENID string 小程序用户 openid,小程序端调用云函数时有
APPID string 小程序 AppID,小程序端调用云函数时有
UNIONID string 小程序用户 unionid,小程序端调用云函数,并且满足 unionid 获取条件时有
ENV string 云函数所在环境的 ID
SOURCE string 调用来源(云函数本次运行是被什么触发)
CLIENTIP string 小程序客户端 IPv4 地址
CLIENTIPV6 string 小程序客户端 IPv6 地址

使用说明

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

SOURCE 的枚举类型:

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

如果在云函数本地调试中,ENV 会为 localSOURCE 会为 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,
  }
}