通过 HTTP 访问云函数
通过 HTTP 网关,您可以将云函数配置为标准的 HTTP 接口,无需 SDK 即可通过 HTTP 请求调用云函数。本文档介绍如何配置云函数的 HTTP 访问以及如何处理请求和响应。
前置条件
- 已创建云开发环境
- 已部署至少一个云函数
配置 HTTP 访问
您可以在云函数详情页直接绑定域名(推荐),也可以在 HTTP 网关统一配置。
方式一:详情页就地绑定(推荐)
- 前往 云函数,进入目标云函数的详情页
- 在「自定义域名」模块点击「添加域名」按钮,弹出绑定窗口
- 在「触发路径」中填写 HTTP 访问路径,支持
/或自定义路径 - 选择自定义域名后确认,已绑定的所有域名会展示在详情页的「域名管理」列表中
方式二:在 HTTP 网关绑定
如果您更习惯从全局视角管理域名与资源的关系,也可以在 HTTP 网关统一配置:
- 前往 HTTP 网关
- 在「域名关联资源」模块点击「新建」按钮
- 配置以下信息:
| 配置项 | 说明 | 示例 |
|---|---|---|
| 关联资源类型 | 选择「云函数」,然后选择目标云函数 | hello-world |
| 域名 | 选择默认域名、自定义域名或 *(匹配所有域名) | 默认域名 |
| 触发路径 | 设置 HTTP 访问路径,支持 / 或自定义路径 | /api/hello |
💡 提示:生产环境建议绑定已备案的自定义域名,以获得完整的服务能力。配置方法请参考 自定义域名配置。
步骤 2:测试访问
配置完成后,访问 域名 + 触发路径 即可调用云函数:
# 示例:访问默认域名的云函数
curl https://your-env-id.<your-env-region>.app.tcloudbase.com/api/hello
发起 HTTP 请求
配置完成后,可以使用任何 HTTP 客户端访问云函数。
- curl
- JavaScript
- Python
# GET 请求
curl https://your-domain/your-function-path
# POST 请求
curl -X POST https://your-domain/your-function-path \
-H "Content-Type: application/json" \
-d '{"name": "CloudBase", "version": "1.0"}'
// 使用 fetch API
const response = await fetch('https://your-domain/your-function-path', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ name: 'CloudBase', version: '1.0' })
});
const data = await response.json();
console.log(data);
import requests
# POST 请求
response = requests.post(
'https://your-domain/your-function-path',
json={'name': 'CloudBase', 'version': '1.0'}
)
data = response.json()
print(data)