CreateRules - 批量创建转发规则

批量创建转发规则。

接口说明

调用该接口创建转发规则时,请注意以下事项:

  • 配置 Redirect 转发动作时,除了 HttpCode 参数外,其余参数不能都配置默认值。
  • 同一个转发规则配置多个转发动作时,Rewrite 转发动作必须配置 ForwardGroup 的动作类型。
  • CreateRules 接口属于异步接口,即系统返回一个实例 ID,但该多条转发规则尚未创建成功,系统后台的创建任务仍在进行。您可以调用 ListRules 查询多条转发规则的创建状态:
    • 当多条转发规则处于 Provisioning 状态时,表示多条转发规则正在创建中。
    • 当多条转发规则处于 Available 状态时,表示多条转发规则创建成功。
  • 一条转发规则最多支持添加的条件数(RuleConditions)和动作数(RuleActions)如下:
    • 条件数:基础版 5 条,标准版 10 条,WAF 增强版 10 条。
    • 动作数:基础版 3 条,标准版 5 条,WAF 增强版 5 条。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
alb:CreateRulescreate
*LoadBalancer
acs:alb:{#regionId}:{#accountId}:loadbalancer/{#loadbalancerId}
*ServerGroup
acs:alb:{#regionId}:{#accountId}:servergroup/{#servergroupId}

请求参数

名称类型必填描述示例值
ListenerIdstring

应用型负载均衡实例监听 ID。

lsn-l16uo9y******
ClientTokenstring

客户端 Token,用于保证请求的幂等性。

从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken 只支持 ASCII 字符。

说明 若您未指定,则系统自动使用 API 请求的 RequestId 作为 ClientToken 标识。每次 API 请求的 RequestId 不一样。
5A2CFF0E-5718-45B5-9D4D-70B3FF3898
DryRunboolean

是否只预检此次请求,取值:

  • true:发送检查请求,不会创建多条转发规则。检查项包括是否填写了必需参数、请求格式、业务限制。如果检查不通过,则返回对应错误。如果检查通过,则返回错误码DryRunOperation

  • false(默认值):发送正常请求,通过检查后返回HTTP 2xx状态码并直接进行创建。

false
Rulesarray<object>

转发规则列表

object
Priorityinteger

转发规则优先级

RuleActionsarray<object>

转发规则动作

object
FixedResponseConfigobject

返回固定内容动作配置

Contentstring

内容

ContentTypestring

内容类型

HttpCodestring

HTTP 响应码

ForwardGroupConfigobject

转发组动作配置

ServerGroupTuplesarray<object>

转发到的目的服务器组列表

object
ServerGroupIdstring

服务器组标识

Weightinteger

权重

ServerGroupStickySessionobject

服务器组之间会话保持

Enabledboolean

是否开启会话保持

Timeoutinteger

超时时间

InsertHeaderConfigobject

插入头部动作配置

Keystring

HTTP 标头

Valuestring

HTTP 标头内容

ValueTypestring

取值类型

Orderinteger

优先级

RedirectConfigobject

重定向动作配置

Hoststring

要跳转的主机地址

HttpCodestring

跳转方式

Pathstring

要跳转的路径

Portstring

要跳转的端口

Protocolstring

要跳转的协议

Querystring

要跳转的查询字符串

RewriteConfigobject

内部重定向动作配置

Hoststring

主机名

Pathstring

路径

Querystring

查询

Typestring

转发规则动作类型

TrafficLimitConfigobject

流量限速

TrafficMirrorConfigobject

流量镜像

TargetTypestring

镜像目标类型

MirrorGroupConfigobject

镜像至服务器组

RemoveHeaderConfigobject

去除 HTTP 标头

Keystring

HTTP 标头键

CorsConfigobject

跨域

AllowOriginarray

允许的访问来源

string
AllowMethodsarray

选择跨域访问时允许的 HTTP 方法

string
AllowHeadersarray

允许跨域的 Header 列表

string
ExposeHeadersarray

允许暴露的 Header 列表

string
AllowCredentialsstring

是否允许携带凭证信息

MaxAgelong

预检请求在浏览器的最大缓存时间

RuleConditionsarray<object>

转发规则条件

object
CookieConfigobject

Cookie 条件配置

Valuesarray<object>

Cookie 键值对列表

object
Keystring

Cookie 条件键

Valuestring

Cookie 条件值

HeaderConfigobject

HTTP 标头条件配置

Keystring

HTTP 标头键

Valuesarray

HTTP 标头值列表

string
HostConfigobject

主机名条件配置

Valuesarray

主机名列表

string
MethodConfigobject

HTTP 请求方法条件配置

Valuesarray

HTTP 请求方法列表

string
PathConfigobject

路径条件配置

Valuesarray

路径条件列表

string
QueryStringConfigobject

查询字符串条件配置

Valuesarray<object>

查询字符串条件键值对列表

object
Keystring

查询字符串条件键

Valuestring

查询字符串条件值

ResponseHeaderConfigobject

返回 HTTP 标头

Keystring

返回 HTTP 标头键

Valuesarray

返回 HTTP 标头值

Valuestring
ResponseStatusCodeConfigobject

返回状态码条件

Valuesarray

返回状态码条件

Valuestring
Typestring

条件类型

SourceIpConfigobject

基于源 IP 业务流量匹配

Valuesarray

基于源 IP 业务流量匹配

string
RuleNamestring

转发规则名称

Directionstring

转发规则方向

返回参数

名称类型描述示例值
object

创建多条转发规则。

JobIdstring

异步任务 ID。

72dcd26b-f12d-4c27-b3af-18f6aed5****
RequestIdstring

请求 ID。

365F4154-92F6-4AE4-92F8-7FF34B540710
RuleIdsarray<object>

转发规则列表。

RuleIdobject

转发规则列表。

RuleIdstring

转发规则 ID。

rule-a3x3pg1yohq3lq****
Priorityinteger

转发规则优先级,取值范围:1~10000。值越小表示优先级越高。

说明 同一个监听内规则优先级必须唯一。
10

示例

正常返回示例

JSON格式

{
  "JobId": "72dcd26b-f12d-4c27-b3af-18f6aed5****",
  "RequestId": "365F4154-92F6-4AE4-92F8-7FF34B540710",
  "RuleIds": [
    {
      "RuleId": "rule-a3x3pg1yohq3lq****",
      "Priority": 10
    }
  ]
}

错误码

HTTP status code错误码错误信息描述
400IncorrectStatus.ListenerThe status of %s [%s] is incorrect.监听的当前状态不支持本次操作。
400OperationDenied.IpGroupCanNotUsedForMirrorActionThe operation is not allowed because of %s.操作被拒绝,原因是%s。
400OperationDenied.SameGroupForForwardAndMirrorActionThe operation is not allowed because of %s.操作被拒绝,原因是%s。
400OperationDenied.GRPCServerGroupThe operation is not allowed because of %s.操作被拒绝,原因是存在绑定本GRPC服务器组的监听没有启用HTTP2.0。
400Conflict.PriorityThere is already %s having the same configuration with %s.优先级冲突,已经存在相同配置
400ResourceQuotaExceeded.LoadBalancerRulesNumThe quota of %s is exceeded for resource %s, usage %s/%s.转发规则数已超额度限制。
400ResourceQuotaExceeded.ServerGroupAttachedNumThe quota of %s is exceeded for resource %s, usage %s/%s.服务器组可被关联数已超额度限制。
400ResourceQuotaExceeded.LoadBalancerServersNumThe quota of %s is exceeded for resource %s, usage %s/%s.后端服务器数已超额度限制。
400ResourceQuotaExceeded.ServerAddedNumThe quota of %s is exceeded for resource %s, usage %s/%s.服务器添加到组已超额度限制。
400QuotaExceeded.RuleWildcardsNumThe quota of %s is exceeded, usage %s/%s.配额%s已超额度限制,目前已使用%s,配额为%s。
400QuotaExceeded.RuleMatchEvaluationsNumThe quota of %s is exceeded, usage %s/%s.转发规则条件数已超额度限制。
400QuotaExceeded.RuleActionsNumThe quota of %s is exceeded, usage %s/%s.配额%s已超额度限制,目前已使用%s,配额为%s。
400Mismatch.VpcIdThe %s is mismatched for %s and %s.%s在%s和%s中不匹配。
400Mismatch.ProtocolThe %s is mismatched for %s and %s.%s在%s和%s中不匹配。
400OperationDenied.RewriteMissingForwardGroupThe operation is not allowed because of RewriteMissingForwardGroup.操作被拒绝,原因是RewriteMissingForwardGroup。
400OperationDenied.MirrorActionSupportHttpGroupOnlyThe operation is not allowed because of MirrorActionSupportHttpGroupOnly.操作被拒绝,原因是流量镜像动作只支持HTTP类型的服务器组。
400OperationDenied.ProtocolMustSameForForwardGroupActionThe operation is not allowed because of ProtocolMustSameForForwardGroupAction.操作被禁止,原因:必须是相同的协议
404ResourceNotFound.ListenerThe specified resource %s is not found.监听不存在。
404ResourceNotFound.ServerGroupThe specified resource %s is not found.后端服务器组不存在。

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2024-11-28OpenAPI 错误码发生变更查看变更详情
2024-09-23OpenAPI 错误码发生变更查看变更详情
2024-01-18OpenAPI 错误码发生变更查看变更详情
2023-11-09OpenAPI 错误码发生变更查看变更详情