跳到主要内容

触发器数据格式

整体数据格式

触发器数据遵循cloudevent规范

变量说明
$requestId请求唯一表示的requestId
$docId云数据库变更的文档ID
$region地域信息
$envId环境ID
$table云数据库集合名称
$action云数据库动作,包括insert/delete/update
$ruleId触发器ID
// 数据格式
{
"specversion": "1.0",
"id": "{$requestId}.{$docId}",
"source": "tcb/database.{$region}.{$envId}.{$table}",
"type": "com.tcb.database.{$action}",
"subject": "{$ruleId}.{$docId}", //
"datacontenttype": "application/json",
"time": "2021-08-20T07:50:24.443501693Z",
"data": { // data为触发器事件来源传递的具体信息
}
}

// 示例
{
"specversion": "1.0",
"id": "8bf9b12d-2869-445f-8f9d-5d22908db3ba.14139e126142e1cc0cddb10d725c8116",
"source": "tcb/database.ap-shanghai.env-abcdefg.blog",
"type": "com.tcb.database.insert",
"subject": "test-trigger.14139e126142e1cc0cddb10d725c8116",
"datacontenttype": "application/json",
"time": "2021-08-20T07:50:24.443501693Z",
"data": {
"docId": "e17e694a614bdaa700002b653e63e880",
"doc": { // 变更后的文档
"Name": "6a9f9a16-e355-4b9e-9ed6-b19b2ab41443",
"_id": "e17e694a614bdaa700002b653e63e880"
},
"dataType": "insert", // 变更类型,枚举:insert/update/delete
"updatedFields": {"Student.Name.Second":"abcdfd"}, // 更新的字段信息,未更新则为null
"RemovedFields": ['demo'] // 删除了哪些字段,未删除则为null
}
}

云数据库

变量类型说明
docIdstring更新的记录 id
docobjectupdate时为更新后的文档,insert为插入时的文档,delete为删除前的文档
dataTypestring数据更新类型,表示记录的具体更新类型,枚举值:update、delete、insert
updatedFieldsobject所有更新的字段及字段更新后的值,key 为更新的字段路径,value 为字段更新后的值,仅在 update 操作时有此信息
RemovedFieldsstring[]所有被删除的字段,仅在 update 操作时有此信息