发布不包含触发器的函数,这是最简单的类型,可以直接通过 event 手动触发参数,也可以在平台绑定其他触发器。
使用方式
在 f.yml
中配置函数,但是不配置 events
字段。
service:
name: midway-faas-examples
provider:
name: aliyun
functions:
emptyTrigger:
handler: index.handler
package:
artifact: code.zip
在 f deploy
后,即可。
:::info 阿里云默认的 event 为 buffer,我们做了 JSON 格式化,如果是 JSON 格式,将会 JSON.parse。 :::
本地测试
示例地址:https://github.com/midwayjs/midway-faas-examples/tree/master/aliyun/demo-faas
// test
describe('/test/index.test.ts', () => {
it('invoke', async () => {
const result: any = await invoke({
functionName: 'emptyTrigger',
data: [ {
name: 'faas' // json 格式的参数
}],
});
assert(/hello world faas/.test(result)); // 字符串返回
});
});
// index.ts
async handler(event: {name: string}) {
return 'hello world ' + event.name;
}