云函数

什么是云函数?

云函数可以帮助你在没有购买和管理服务器时仍能运行代码。你只需要进行核心代码的编写及设置代码运行的条件,代码即可在知晓云云基础设施上自动、安全地运行。

对开发者的意义?

你只需编写简单的、目的单一的云函数,并将它与其他功能(如触发器、定时任务)产生的事件关联起来。即可在小程序上实现更加复杂的业务逻辑,如订单的自动化取消、自动发货、自动扣减库存等等。 使用知晓云可以完成市面上全部类型的小程序实现,真正做到不需要管服务器维护服务的事情,极大降低运维成本,在快速实现功能的基础上,仍然保留了极强的水平扩展能力。

Node.js SDK

目前知晓云云函数支持的 Node.js 开发语言包括如下版本:

  • Node.js 8.9

代码编写格式

在云函数中使用 Node.js 编程,需要定义一个 Node.js 函数作为入口,一个简单的函数定义如下:

exports.main = function helloWorld(event, callback) {
  let name = event.data.name
  callback(null, 'hello ' + name)
}

参数介绍

event

此参数包含了触发事件的相关数据:

包含字段 类型 说明
data 任何 js 合法类型 在用户调用云函数时传入的参数
eventType String 提供给用户的触发来源的信息,包括http-call/event-payment/event-data/event-schedule
jobId Number 当前函数执行的 id
memoryLimitInMB Number 当前函数的内存资源限制
miniappId Number 云函数所属小程序 id
request Object 若云函数请求来自 BaaS SDK, 此处存储请求用户及其他客户端信息
timeLimitInMS Number 当前函数的 timeout 时间

callback

可选项。使用此参数用于将你所希望的信息返回给调用方。格式如 callback(err, data),err 为错误信息,可为 Error 类型或字符串,没有出错的情况下,可设置为 null;data 为函数成功执行的结果信息。

日志

你可以在程序中使用如下几种不同的日志级别来完成日志输出:

console.log(message)
console.error(message)
console.warn(message)
console.info(message)

日志格式为:ISOString + 日志级别 + message,如下示例:

2017-07-05T05:13:35.920Z INFO hello world

已包含的库及使用方法

目前支持在云函数中对知晓云中的数据,内容和文件进行操作,同时也支持调用其它云函数,发送邮件和模板消息等功能,使用如下:

exports.main = function (event, callback) {
  let AddressBook = new BaaS.TableObject(7)

  AddressBook.get('591c2b89ae63c874d6e37bc7').then(res => {
    callback(null, res.data)
  }, err => {
    callback(err)
  })
}

results matching ""

    powered by

    No results matching ""