Skip to content

Latest commit

 

History

History
executable file
·
105 lines (81 loc) · 3.12 KB

cloud-function.md

File metadata and controls

executable file
·
105 lines (81 loc) · 3.12 KB

调用云函数

BaaS.invoke(functionName, params, sync)

参数说明

参数 类型 必填 描述
functionName String 云函数名
params Object 传递给云函数的参数
sync Bool 是否等待返回函数执行结果,默认为 true。同步与异步云函数有不同的超时时间,同步云函数为 5 秒,而异步云函数为 5 分钟(300 秒)

返回参数说明

参数 类型 描述
code Number code 为 0 时表示成功执行云函数,否则为执行云函数失败
data 由云函数返回的数据类型决定 函数通过 callback 返回的数据
error Object 返回的错误信息,成功则返回空对象

请求示例

假设已经创建了一个云函数 helloWorld,其接受一个 name 作为参数,返回 hello ${name},云函数代码如下:

exports.main = function helloWorld(event, callback) {
  console.log(event)
  callback(null, `hello ${event.data.name}`)
}

可通过以下方式在云函数中进行调用 helloWorld 函数。

BaaS.invoke('helloWorld', {name: 'allen'}).then(res => {
  let result = res
  if (result.code === 0) {
    callback(null, result.data)
  } else {
    callback(result.error.message)
  }
}, err => {
  // HError 对象
  callback(err)
})

返回参数

{
  "error": {},
  "code": 0,
  "data": "hello allen"
}

HError 对象结构请参考错误码和 HError 对象

已废弃 BaaS.invokeFunction(functionName, params, sync)

参数说明

参数 类型 必填 描述
functionName String 云函数名
params Object 传递给云函数的参数
sync Bool 是否等待返回函数执行结果,默认为 true。同步与异步云函数有不同的超时时间,同步云函数为 5 秒,而异步云函数为 5 分钟(300 秒)

返回参数说明

参数 类型 描述
data.code Number code 为 0 时表示成功执行云函数,否则为执行云函数失败
data.data 由云函数返回的数据类型决定 函数通过 callback 返回的数据
data.error Object 返回的错误信息,成功则返回空对象

请求示例

假设已经创建了一个云函数 helloWorld,其接受一个 name 作为参数,返回 hello ${name},可通过以下方式在云函数中进行调用

BaaS.invokeFunction('helloWorld', {name: 'allen'}).then(res => {
  let result = res.data // 此处的 res 为完整的 http response
  if (result.code === 0) {
    callback(null, result.data)
  } else {
    callback(result.error.message)
  }
}, err => {
  callback(err)
})

返回参数

{
  "error": {},
  "code": 0,
  "data": "hello allen" 
}