变量

最近更新时间:2025-07-25 17:11:41

我的收藏

简介

规则引擎的变量允许您动态提取和处理请求中的数据。这些变量不仅可以存储静态值,还可以引用请求中的特定字段或信息,其值在处理每个请求时都可能变化。例如:http.request.host 变量,它可以提取每个 HTTP 请求中的 hostname。这种能力使规则引擎能够处理更复杂的业务逻辑。

内容

以下是目前 EdgeOne 支持的预设变量 - 从客户端 HTTP 请求中获取特定的字段或信息作为变量。
说明:
使用变量时,请遵循以下格式:${http.request.scheme}。若格式或名称不正确,则无法成功使用变量。
目前支持单独使用变量,以及变量与常量拼接,或变量 A 与变量 B 拼接。
名称
类型
说明
示例
http.request.scheme
String
客户端请求协议
http
https
http.request.zone
String
站点名称
example.com
http.request.zoneid
String
站点 ID
zone-2c2r77pc3796
http.request.host
String
客户端请求 URI 中的 hostname
www.example.com
http.request.full_uri
String
客户端请求的完整 URI(不包括#fragment)
htt­ps://www.example.org/articles/index?section=539061&expand=comments
http.request.method
String
客户端请求 HTTP 方法
GET
http.request.uri
String
客户端请求的 URI 路径和查询字符串
/articles/index?section=539061&expand=comments
http.request.uri.path
String
客户端请求的 URI 路径
/articles/index
http.request.file_extension
String
客户端请求文件的文件后缀
jpg
http.request.filename
String
客户端请求文件的文件名
bot.txt
http.request.uri.query
String
客户端请求的整个查询字符串,不包括?分隔符
section=539061&expand=comments
http.request.headers["key"]
String
客户端请求指定头部名称为“key”的头部值,“key”可替换为您指定的名称。
若指定的头部名称重复出现,则变量值以最后面的为准。
客户端请求 URL :https://developer.mozilla.org,携带头部 -H 'key: 123' -H 'key: 456',则变量获取到的值为 456
http.request.uri.args["key"]
String
客户端查询字符串指定参数名称为“key”的参数值,“key”可替换为您指定的名称。
若指定的参数名称重复出现,则变量值以最后面的为准。
客户端请求 URL :https://developer.mozilla.org?key=123&key=456,则变量获取到的值为 456
http.request.version
String
客户端请求所使用的 HTTP 协议的版本
HTTP/1.0
HTTP/1.1
HTTP/2
HTTP/3
http.request.ip
String
客户端 TCP IP 地址,例如:1.1.1.1
93.184.216.34
http.request.ip.port
String
客户端源端口
1028
http.request.ip.city
String
与客户端 IP 地址相关联的城市
San Francisco
http.request.ip.continent
String
与客户端 IP 地址相关联的大洲代码
AF: 非洲 (Africa)
AS: 亚洲 (Asia)
EU: 欧洲 (Europe)
NA: 北美洲 (North America)
SA: 南美洲 (South America)
OC: 大洋洲 (Oceania)
AN: 南极洲 (Antarctica)
http.request.ip.country
String
与客户端 IP 地址相关联的以 ISO 3166-1 Alpha 2 格式的2字母国家代码
GB,更多见 ISO 3166-1 Alpha 2 规范

使用示例

1. 自定义回源请求头部,携带客户端 IP 地址所在国家信息回源。

2. 自定义回源请求头部,源站收集和统计哪些域名是经过 Tencent EdgeOne 加速。

3. 自定义跨域请求策略:允许请求中 Origin 头部值的域名的跨域请求。

4. 自定义节点响应头:引用 URL 中 filename 参数的值以及拼接固定常量,作为响应头部 Content-Disposition 的值。