使用方式

f.yml 中配置函数和触发器。

  1. service: midway-faas-examples
  2. provider:
  3. name: tecent
  4. functions:
  5. mqTrigger:
  6. handler: cmq.handler
  7. events:
  8. - cmq:
  9. topic: test-topic-queue
  10. enable: false
  11. package:
  12. artifact: code.zip

f deploy 后,即可。

:::info 注意,在腾讯云下,midway faas 提供的默认消息队列格式为 JSON :::

开发支持

针对 CMQ(mq) 触发器,我们提供了传入的事件类型定义。

  1. import { SCF } from '@midwayjs/faas';
  2. export class CMQTriggerTest {
  3. @Func('cmq.handler')
  4. async handler(event: SCF.CMQEvent) {
  5. // TODO
  6. }
  7. }

本地开发

使用 f invoke 命令进行触发。

  1. f invoke -f [你的函数名]

本地测试

这里没有传 data,会默认通过 f.yml 获取触发器类型传入模拟数据。

  1. // test
  2. describe('/test/index.test.ts', () => {
  3. it('invoke', async () => {
  4. await invoke({
  5. functionName: 'mqTrigger',
  6. });
  7. });
  8. });