云调用 API 对象。
支持端:小程序 2.7.0
声明字符串为 CloudID(开放数据 ID),该接口传入一个字符串,返回一个 CloudID 特殊对象,将该对象传至云函数可以获取其对应的开放数据。详见通过云调用获取开放数据
通过开放能力在小程序端获取得到的 CloudID
小程序端调用
wx.cloud.callFunction({
  name: 'myFunction',
  data: {
    weRunData: wx.cloud.CloudID('xxx'), // 这个 CloudID 值到云函数端会被替换
    obj: {
      shareInfo: wx.cloud.CloudID('yyy'), // 非顶层字段的 CloudID 不会被替换,会原样字符串展示
    }
  }
})
在云函数端接收到的 event 将会包含对应开放数据的对象,其中 event.weRunData 会因为符合规则而包含开放数据,event.shareInfo 则不会,event 结构将如下:
{
  "weRunData": {
    "cloudID": "27_Ih-9vxDaOhIbh48Bdpk90DUkUoNMAPaNtg7OSGM-P2wPEk1NbspjKGoql_g",
    "data": {
      "stepInfoList": [
        {
          "step": 9103,
          "timestamp": 1571673600
        },
        {
          "step": 9783,
          "timestamp": 1571760000
        }
      ],
      "watermark": {
        "appid": "wx3d289323f5900f8e",
        "timestamp": 1574338655
      }
    }
  },
  "obj": {
    "shareInfo": "xxx"
  }
}
支持端:云函数
获取 CloudID 对应的开放数据
要获取对应开放数据的 CloudID 列表
| 属性 | 类型 | 说明 | 
|---|---|---|
| list | Array.<Object> | 开放数据列表,与传入的 CloudID 列表一一对应 | 
list 的结构
| 属性 | 类型 | 说明 | 
|---|---|---|
| cloudID | string | 开放数据 CloudID | 
| data | Object | 开放数据 | 
详见通过云调用获取开放数据
const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})
exports.main = async (event, context) => {
  const res = await cloud.getOpenData({
    list: event.openData.list, // 假设 event.openData.list 是一个 CloudID 字符串列表
  })
  return res.list
}
返回的结果结构类似如下(假设 list 长度为 1,其中的 CloudID 是微信运动数据的 CloudID):
[{
  "cloudID": "27_Ih-9vxDaOhIbh48Bdpk90DUkUoNMAPaNtg7OSGM-P2wPEk1NbspjKGoql_g",
  "data": {
    "stepInfoList": [
      {
        "step": 9103,
        "timestamp": 1571673600
      },
      {
        "step": 9783,
        "timestamp": 1571760000
      }
    ],
    "watermark": {
      "appid": "wx3d289323f5900f8e",
      "timestamp": 1574338655
    }
  }
支持端:云函数
获取实时语音签名
| 属性 | 类型 | 默认值 | 必填 | 说明 | 
|---|---|---|---|---|
| groupId | string | 是 | 游戏房间的标识 | |
| nonce | string | 是 | 随机字符串,长度应小于 128 | |
| timestamp | number | 是 | 生成这个随机字符串的 UNIX 时间戳(精确到秒) | 
| 属性 | 类型 | 说明 | 
|---|---|---|
| signature | string | 签名 | 
const cloud = require('wx-server-sdk')
cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})
exports.main = async (event, context) => {
  const result = await cloud.getVoIPSign({
    groupId: 'xxx',
    timestamp: 1557056066,
    nonce: 'yyy'
  })
  return result.fileListt
}
(c) 2024 chaojicainiao.com MIT license