常量

DYNAMIC_CURRENT_ENV

标志当前所在环境,注意该值不是当前所在环境 ID 的字符串,其值等价于 Symbol.for('DYNAMIC_CURRENT_ENV'),是用于标志当前所在环境的。如在 init 中如果给 env 参数传该常量值,则后续的 API 请求会自动请求当前所在环境的云资源,如云函数 A 当前所在环境是 test-123,则其接下来请求数据库、文件存储、云函数时都默认请求环境 test-123 的数据库、文件存储、云函数。

常量可用于:
  • cloud.init 的 env 参数
  • 各 API 的 config 参数中的 env 参数
示例

cloud.init: 设置 API 默认环境等于当前所在环境

cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})
1
2
3

cloud.database: 设置新数据库对象的调用环境等于当前所在环境

cloud.init({
  env: 'xxx'
})

// 不同于 init 时设置的环境,db 对象的请求将会去到和当前云函数所在环境相同的环境
const db = cloud.database({
  env: cloud.DYNAMIC_CURRENT_ENV
})
cloud.callFunction: 设置调用的同环境的云函数

cloud.init({
  env: 'xxx'
})

// 不同于 init 时设置的环境,对云函数 getInfo 的请求将会去到和当前云函数所在环境相同的环境
const callResult = await cloud.callFunction({
  name: 'getInfo',
  config: {
    env: cloud.DYNAMIC_CURRENT_ENV
  },
  data: {
    // ...
  },
})
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24