1. 接口描述
接口请求域名: waf.tencentcloudapi.com 。
创建限流规则
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
| 参数名称 | 必选 | 类型 | 描述 |
|---|---|---|---|
| Action | 是 | String | 公共参数,本接口取值:CreateRateLimitV2。 |
| Version | 是 | String | 公共参数,本接口取值:2018-01-25。 |
| Region | 是 | String | 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-guangzhou, ap-seoul, ap-singapore 。 |
| Domain | 是 | String | 域名 示例值:www.xxx.com |
| Name | 是 | String | 规则名 示例值:TestRule |
| Priority | 是 | Integer | 规则优先级 示例值:50 |
| Status | 是 | Integer | 规则开关,0关闭,1开启 示例值:1 |
| LimitWindow | 是 | LimitWindow | 限流窗口 示例值: {"Second": 3, "Minute": 0, "Hour": 0} |
| LimitObject | 是 | String | 支持API或Domain,如果是基于API,则LimitPaths不能为空,否则LimitPaths为空 示例值:API |
| LimitStrategy | 是 | Integer | 限流策略,0:观察,1:拦截,2:人机 示例值:0 |
| LimitMethod | 否 | LimitMethod | 限流方法 示例值:{ "Method":"GET", "Type":"EXACT" } |
| LimitPaths | 否 | LimitPath | 限流路径列表 示例值:{"Path": "/test1", "Type": "IN" } |
| LimitHeaders.N | 否 | Array of LimitHeader | 限流Headers 示例值:[{"Type": "IN", "Key": "value", "Value": "v1,v2"}] |
| LimitHeaderName | 否 | LimitHeaderName | 基于Header参数名限流 示例值:{"ParamsName": "keya,keyb", "Type": "IN"} |
| GetParamsName | 否 | MatchOption | 基于Get参数名限流 示例值: {Content: "getname", Func: "IN"} |
| GetParamsValue | 否 | MatchOption | 基于Get参数值限流 示例值:{"Content": "valuea", "Func": "IN", "Params": "valuea"} |
| PostParamsName | 否 | MatchOption | 基于Post参数名限流 示例值: {Content: "postname", Func: "IN"} |
| PostParamsValue | 否 | MatchOption | 基于Post参数值限流 示例值:{"Content": "valuea", "Func": "IN", "Params": "valuea"} |
| IpLocation | 否 | MatchOption | 基于IP归属地限流 示例值:{"Lang":"cn","Areas":[{"Country":"中国","Region":"广西","City":"南宁"}]} |
| RedirectInfo | 否 | RedirectInfo | 重定向信息,当LimitStrategy为重定向时,此字段必填 示例值:{"Protool":"http","Domain":"www.test.com","Url":"/testRedirect"} |
| BlockPage | 否 | Integer | 拦截页面,0表示429,否则填写blockPageID 示例值:0 |
| ObjectSrc | 否 | Integer | 限流对象来源,0:手动填写,1:API资产 示例值:0 |
| QuotaShare | 否 | Boolean | 是否共享配额,只有当对象为URL时有效,false表示URL独享配额,true表示所有URL共享配额 示例值:false |
| PathsOption.N | 否 | Array of PathItem | 路径选项,可配置每个路径的请求方法 示例值:{"Path":"/test","Method":"GET"} |
| Order | 否 | Integer | 限流执行顺序,0:默认情况,限流优先,1:安全防护优先 示例值:0 |
3. 输出参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| BaseInfo | RateLimitCommonRsp | 操作结果 示例值:{"Code": 0,"Info": "success"} |
| RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 创建限流规则
输入示例
POST / HTTP/1.1
Host: waf.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRateLimitV2
<公共请求参数>
{
"Domain": "www.test.com",
"Name": "testName",
"Priority": 0,
"Status": 0,
"LimitMethod": {
"Method": "GET",
"Type": "EXACT"
},
"LimitPaths": {
"Path": "/testurl",
"Type": "EXACT"
},
"LimitHeaders": [
{
"Key": "name",
"Value": "waf_value",
"Type": "EXACT"
}
],
"LimitWindow": {
"Second": 0,
"Minute": 10
},
"LimitHeaderName": {
"ParamsName": "name",
"Type": "EXACT"
},
"LimitObject": "API",
"LimitStrategy": 0
}
输出示例
{
"Response": {
"BaseInfo": {
"Code": 1,
"Info": "success"
},
"RequestId": "546b2091-1a59-4bd9-818d-47ab565102d9"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Java: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for PHP: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Go: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Node.js: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for .NET: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for C++: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Ruby: CNB, GitHub, Gitee
命令行工具
6. 错误码
该接口暂无业务逻辑相关的错误码,其他错误码详见 公共错误码。