Resolver
Resolver
可以处理来自kafka等消息队列的消息。
Manifest定义
modules:
messageQueueConsumer:
- key: mq-queue-consumer
# Name of the queue for which this consumer will be invoked
queue: queue-name
# 消息的来源,对应下方的messageQueues
messageQueue: bcc-kafka
# 可选,对消息体数据进行转换
messageTransformer:
tenant: $.tenant
data:
name: $.name
resolver:
function: consumer-function
method: event-listener
function:
- key: consumer-function
handler: consumer.handler
messageQueues:
- key: bcc-kafka
type: kafka
endpoint: gitee-kafka:9092
resolver
中的 function 指向 function
模块中的key
警告
每一个模块只能对应一个resolver function,但是一个resolver function可以定义多个method
resolver
中的method
则对应执行函数中定义的方法。参考下方resolver方法的定义。
定义resolver函数
import { Resolver } from "@giteeteam/apps-api";
const resolver = new Resolver();
resolver.define("event-listener", async ({ payload }) => {
// process the event
});
resolver.define("event-listener-2", async ({ payload }) => {
// process the event
});
export const handler = resolver.getDefinitions();