tcb fn run
在本地运行和调试云函数,无需部署到云端。
仅支持 Node.js
tcb fn run 当前只支持 Node.js 运行时。本地运行函数型云托管服务见 CloudRun 本地运行。
语法
tcb fn run [options]
支持两种方式定位函数:
--path:直接指定函数目录,使用默认配置运行,不需要cloudbaserc.json。--name:读取当前项目cloudbaserc.json中functions对应函数的配置(handler、envVariables、params等)后运行。
参数
| 参数 | 必填 | 说明 | 默认值 |
|---|---|---|---|
--path <path> | 与 --name 二选一 | 函数所在路径,使用默认配置调用,不需要配置文件 | — |
--name <name> | 与 --path 二选一 | 函数名称,从 cloudbaserc.json 读取对应配置 | — |
--params <params> | 否 | 调用参数,JSON 字符串 | — |
--debug | 否 | 以 Node Inspector 模式启动 | — |
--port <port> | 否 | 调试监听端口 | 9229 |
示例
通过路径运行
目录下需包含 index.js 并导出 main 方法。
# 使用默认配置运行 ./functions/app
tcb fn run --path ./functions/app
通过名称运行
在项目目录下需存在 cloudbaserc.json,并在 functions 中配置对应函数。
tcb fn run --name app
按配置文件中的 handler、envVariables、params 运行。字段说明见 函数配置。
传入调用参数
tcb fn run --name app --params '{"userId": "123", "action": "query"}'
配置文件与命令行同时设置 params 时,命令行优先。
启动调试模式
# 使用默认端口 9229
tcb fn run --path ./functions/app --debug
# 指定调试端口
tcb fn run --path ./functions/app --debug --port 9230
启动后可用 Chrome DevTools 或 VS Code 连接对应端口断点调试。
注意事项
- 只支持 Node.js,Python、Java、Go、PHP 等运行时无法通过
tcb fn run本地运行。 - 使用
--path时,目录下必须有index.js并导出main方法。 - 使用
--name时,按cloudbaserc.json的handler(默认index.main)解析入口文件和函数名。 - 已登录 CLI 时,运行过程自动注入
TENCENTCLOUD_SECRETID、TENCENTCLOUD_SECRETKEY、TENCENTCLOUD_SESSIONTOKEN,函数内可直接调用云开发资源。未登录时不注入,涉及云开发资源的调用可能失败。