阅读(1221) (22)

微信小程序云开发SDK文档 开发能力

2020-07-24 16:47:03 更新

Cloud.openapi

云调用 API 对象。


Cloud.CloudID(cloudID: string)

支持端:小程序 2.7.0

声明字符串为 CloudID(开放数据 ID),该接口传入一个字符串,返回一个 CloudID 特殊对象,将该对象传至云函数可以获取其对应的开放数据。详见通过云调用获取开放数据

参数

cloudID: string

通过开放能力在小程序端获取得到的 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"
  }
}

Cloud.getOpenData(list: string[]): Object

支持端:云函数

获取 CloudID 对应的开放数据

参数

list: string[]

要获取对应开放数据的 CloudID 列表

返回值

Object

属性 类型 说明
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
    }
  }

Cloud.getVoIPSign(options: Object): Promise<Object>

支持端:云函数

获取实时语音签名

参数

options: Object

属性类型默认值必填说明
groupIdstring游戏房间的标识
noncestring随机字符串,长度应小于 128
timestampnumber生成这个随机字符串的 UNIX 时间戳(精确到秒)

返回值

Promise.<Object>

属性类型说明
signaturestring签名

示例代码

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
}